From 7d627d16cd4bb88e625291dff4cc886c68dbf785 Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Mon, 16 Mar 2026 08:53:44 +0000 Subject: chore: migrate deploy + ops scripts from SSH to local execution Replace SSH-based deploy.sh with scripts/deploy that runs locally on the server. Update scripts/bugs, scripts/logs, and scripts/resolve-bug to drop SSH wrappers. Update CLAUDE.md and DESIGN.md to reflect new local workflow. Co-Authored-By: Claude Sonnet 4.6 --- deploy.sh | 64 --------------------------------------------------------------- 1 file changed, 64 deletions(-) delete mode 100755 deploy.sh (limited to 'deploy.sh') diff --git a/deploy.sh b/deploy.sh deleted file mode 100755 index a201d82..0000000 --- a/deploy.sh +++ /dev/null @@ -1,64 +0,0 @@ -#!/bin/bash -set -e - -# Configuration -REMOTE="titanium" -FQDN="doot.terst.org" -SITE_DIR="/site/${FQDN}" -SERVICE="task-dashboard@${FQDN}" - -echo "==> Building CSS..." -npm run css:build - -echo "==> Building binary (linux/amd64)..." -BUILD_COMMIT=$(git rev-parse --short HEAD) -BUILD_TIME=$(date -u '+%Y-%m-%dT%H:%M:%SZ') -LDFLAGS="-X main.buildCommit=${BUILD_COMMIT} -X main.buildTime=${BUILD_TIME}" -GOOS=linux GOARCH=amd64 go build -ldflags "$LDFLAGS" -o app cmd/dashboard/main.go - -echo "==> Pushing code to ${REMOTE}..." -git push ${REMOTE} master - -echo "==> Uploading binary..." -scp app ${REMOTE}:${SITE_DIR}/app.new - -echo "==> Syncing assets and migrations..." -# Sync static files (including built CSS which is git-ignored) -rsync -avz --delete web/static/ ${REMOTE}:${SITE_DIR}/public/ -# Sync templates -rsync -avz --delete web/templates/ ${REMOTE}:${SITE_DIR}/templates/ -# Sync migrations (required for app startup) -rsync -avz --delete migrations/ ${REMOTE}:${SITE_DIR}/migrations/ - -echo "==> Deploying on ${REMOTE}..." -ssh ${REMOTE} bash -s << 'EOF' -set -e -FQDN="doot.terst.org" -SITE_DIR="/site/${FQDN}" -SERVICE="task-dashboard@${FQDN}" - -cd ${SITE_DIR} - -echo "Stopping service..." -systemctl stop ${SERVICE} || true - -echo "Swapping binary..." -mv app.new app - -echo "Setting permissions..." -chown -R www-data:www-data ${SITE_DIR} -find ${SITE_DIR} -type d -exec chmod 755 {} \; -find ${SITE_DIR} -type f -exec chmod 644 {} \; -chmod +x ${SITE_DIR}/app -chmod 600 ${SITE_DIR}/.env 2>/dev/null || true - -echo "Starting service..." -systemctl start ${SERVICE} -sleep 1 -systemctl status ${SERVICE} --no-pager -l - -echo "Deploy complete!" -EOF - -rm -f app -echo "==> Done!" -- cgit v1.2.3