← back to Rentv 2026
fix(deploy-frontpage): zsh array for ssh opts (plain string errored 'connecttimeout extra arguments' on first real use)
0121172ab97807c35a11eaed9f613f89f150b6b4 · 2026-08-06 12:12:34 -0700 · steve@designerwallcoverings.com
Files touched
M scripts/deploy-frontpage.sh
Diff
commit 0121172ab97807c35a11eaed9f613f89f150b6b4
Author: steve@designerwallcoverings.com <steve@designerwallcoverings.com>
Date: Thu Aug 6 12:12:34 2026 -0700
fix(deploy-frontpage): zsh array for ssh opts (plain string errored 'connecttimeout extra arguments' on first real use)
---
scripts/deploy-frontpage.sh | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/scripts/deploy-frontpage.sh b/scripts/deploy-frontpage.sh
index f49336f4..bfeb99de 100755
--- a/scripts/deploy-frontpage.sh
+++ b/scripts/deploy-frontpage.sh
@@ -21,7 +21,12 @@ set -euo pipefail
HOST="root@45.61.58.125"
RBASE="/root/public-projects/rentv"
-SSHOPTS="-o ConnectTimeout=15 -o StrictHostKeyChecking=accept-new"
+# zsh does NOT word-split unquoted parameters, so ssh options must live in an ARRAY
+# (a plain string passes "-o ConnectTimeout=15 -o Strict…" as ONE -o value → ssh
+# "keyword connecttimeout extra arguments" error). Use "${SSHOPTS[@]}" for ssh and
+# the joined "${SSHOPTS[*]}" inside rsync's single -e string.
+typeset -a SSHOPTS
+SSHOPTS=(-o ConnectTimeout=15 -o StrictHostKeyChecking=accept-new)
ROOT="$HOME/Projects/rentv"
cd "$ROOT"
@@ -43,12 +48,12 @@ for f in "${FILES[@]}"; do
R="$RBASE/$f"
if (( DRY )); then
echo "DRY-RUN would deploy: $f → $HOST:$R"
- rsync -azn --checksum -e "ssh $SSHOPTS" "$ROOT/$f" "$HOST:$R" || true
+ rsync -azn --checksum -e "ssh ${SSHOPTS[*]}" "$ROOT/$f" "$HOST:$R" || true
continue
fi
echo "→ deploying $f"
- ssh $SSHOPTS "$HOST" "test -f '$R' && cp -p '$R' '$R.bak-$STAMP' || true"
- rsync -az --checksum -e "ssh $SSHOPTS" "$ROOT/$f" "$HOST:$R"
+ ssh "${SSHOPTS[@]}" "$HOST" "test -f '$R' && cp -p '$R' '$R.bak-$STAMP' || true"
+ rsync -az --checksum -e "ssh ${SSHOPTS[*]}" "$ROOT/$f" "$HOST:$R"
echo " live → $R (backup: $R.bak-$STAMP)"
done
← 78a39e80 PR-intel: add found_role_corroborated status (DTD verdict C)
·
back to Rentv 2026
·
chore: dynamic featured-video + latest-article hero + image- e61ee419 →