summaryrefslogtreecommitdiff
path: root/deploy.sh
diff options
context:
space:
mode:
Diffstat (limited to 'deploy.sh')
-rwxr-xr-xdeploy.sh64
1 files changed, 0 insertions, 64 deletions
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!"