Add sync-to-vm.sh to copy local config directories to remote VM
This commit is contained in:
@@ -7,6 +7,7 @@ Scripts for setting up a fresh Linux VM to host opencode-devbox.
|
||||
- **`cloud-init.yml`** — cloud-init user-data template for automated VM provisioning on OpenStack, Proxmox, or any cloud with cloud-init support
|
||||
- **`setup-host.sh`** — interactive post-install script for VMs that weren't provisioned with cloud-init
|
||||
- **`setup-openstack-secgroup.sh`** — creates an OpenStack security group with the right rules (SSH, mosh, ICMP)
|
||||
- **`sync-to-vm.sh`** — syncs local config directories (`~/.aws`, `~/.config/opencode`, etc.) to a remote VM based on which bind mounts are active in its `docker-compose.yml`
|
||||
|
||||
## Supported distributions
|
||||
|
||||
@@ -186,3 +187,13 @@ docker compose exec -u developer devbox opencode
|
||||
```
|
||||
|
||||
> **AWS Bedrock users:** Uncomment the `~/.aws` volume mount in `docker-compose.yml` before starting. You'll also need to copy your `~/.aws/config` from a machine where SSO is already configured, then authenticate inside the container with `aws sso login`.
|
||||
|
||||
### Syncing local config to the VM
|
||||
|
||||
After editing `docker-compose.yml` on the VM to uncomment the bind mounts you need, run `sync-to-vm.sh` from your local machine to copy the corresponding directories:
|
||||
|
||||
```bash
|
||||
./deploy/sync-to-vm.sh devbox-affection
|
||||
```
|
||||
|
||||
The script reads `docker-compose.yml` on the remote VM, detects which bind mounts are active, and syncs only those directories from your local machine. It also creates the remote directories if they don't exist.
|
||||
|
||||
Reference in New Issue
Block a user