summaryrefslogtreecommitdiff
path: root/deployment/deploy
diff options
context:
space:
mode:
Diffstat (limited to 'deployment/deploy')
-rw-r--r--deployment/deploy33
1 files changed, 33 insertions, 0 deletions
diff --git a/deployment/deploy b/deployment/deploy
new file mode 100644
index 0000000..f120bb3
--- /dev/null
+++ b/deployment/deploy
@@ -0,0 +1,33 @@
+#!/bin/bash
+set -e
+
+FQDN="doot.terst.org"
+SITE_DIR="/site/${FQDN}"
+CODE_DIR="${SITE_DIR}/app-code"
+SERVICE="task-dashboard@${FQDN}"
+
+cd ${CODE_DIR}
+
+echo "==> Pulling latest..."
+git pull
+
+echo "==> Stopping service..."
+systemctl stop ${SERVICE} || true
+
+echo "==> Building..."
+go build -o ${SITE_DIR}/app cmd/dashboard/main.go
+
+echo "==> Syncing files..."
+rsync -a --delete web/static/ ${SITE_DIR}/public/
+rsync -a --delete web/templates/ ${SITE_DIR}/templates/
+
+echo "==> Fixing permissions..."
+chown -R www-data:www-data ${SITE_DIR}
+chmod +x ${SITE_DIR}/app
+chmod 600 ${SITE_DIR}/.env 2>/dev/null || true
+
+echo "==> Starting service..."
+systemctl start ${SERVICE}
+systemctl status ${SERVICE} --no-pager -l
+
+echo "==> Done!"