From dd63607a3f25d853b54e00de3b25e22da2d72289 Mon Sep 17 00:00:00 2001 From: Joakim Persson Date: Sun, 19 Apr 2026 20:15:22 +0200 Subject: [PATCH] Ensure WORKSPACE_PATH from remote .env exists on VM --- deploy/sync-to-vm.sh | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/deploy/sync-to-vm.sh b/deploy/sync-to-vm.sh index 1744083..5b862c5 100755 --- a/deploy/sync-to-vm.sh +++ b/deploy/sync-to-vm.sh @@ -69,6 +69,23 @@ REMOTE_COMPOSE_CONTENT=$(ssh_cmd "cat $REMOTE_COMPOSE 2>/dev/null") || { exit 1 } +# ── Ensure workspace directory exists on remote ───────────────────── +REMOTE_ENV="~/opencode-devbox/.env" +WORKSPACE_PATH=$(ssh_cmd "grep -E '^\s*WORKSPACE_PATH=' $REMOTE_ENV 2>/dev/null | cut -d= -f2- | tr -d '\"'" 2>/dev/null || true) +if [[ -n "$WORKSPACE_PATH" ]]; then + info "Ensuring WORKSPACE_PATH (${WORKSPACE_PATH}) exists on ${SSH_HOST}..." + ssh_cmd "mkdir -p ${WORKSPACE_PATH}" + ok "Workspace directory ready" +else + # Default from docker-compose.yml is ~/projects or current dir + WORKSPACE_PATH=$(echo "$REMOTE_COMPOSE_CONTENT" | grep -oP 'WORKSPACE_PATH:-[^}]+' | sed 's/WORKSPACE_PATH:-//' || true) + if [[ -n "$WORKSPACE_PATH" && "$WORKSPACE_PATH" != "." ]]; then + info "Ensuring default WORKSPACE_PATH (${WORKSPACE_PATH}) exists on ${SSH_HOST}..." + ssh_cmd "mkdir -p ${WORKSPACE_PATH}" + ok "Workspace directory ready" + fi +fi + # ── Detect active bind mounts ────────────────────────────────────── SYNCED=0