diff --git a/apps/field/deploy.sh b/apps/field/deploy.sh new file mode 100755 index 0000000..1479e7a --- /dev/null +++ b/apps/field/deploy.sh @@ -0,0 +1,48 @@ +#!/bin/bash +# ───────────────────────────────────────────────────────────────────────────── +# deploy.sh — Build Targo Field PWA and deploy to field-frontend nginx container +# +# Served at erp.gigafibre.ca/field/ via Traefik StripPrefix + Authentik SSO. +# Static files go to /opt/field-app/ on the host, mounted into nginx container. +# +# Usage: +# ./deploy.sh # deploy to remote server (production) +# ./deploy.sh local # deploy locally +# ───────────────────────────────────────────────────────────────────────────── +set -e + +SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +cd "$SCRIPT_DIR" + +SERVER="root@96.125.196.67" +SSH_KEY="$HOME/.ssh/proxmox_vm" +DEST="/opt/field-app" + +echo "==> Installing dependencies..." +npm ci --silent + +echo "==> Building PWA (base=/field/)..." +VITE_ERP_TOKEN="b273a666c86d2d0:06120709db5e414" DEPLOY_BASE=/field/ npx quasar build -m pwa + +if [ "$1" = "local" ]; then + echo "==> Deploying to local $DEST..." + rm -rf "$DEST"/* + cp -r dist/pwa/* "$DEST/" + echo "" + echo "Done! Targo Field: http://localhost/field/" +else + echo "==> Packaging..." + tar czf /tmp/field-pwa.tar.gz -C dist/pwa . + + echo "==> Deploying to $SERVER..." + cat /tmp/field-pwa.tar.gz | ssh -i "$SSH_KEY" "$SERVER" \ + "cat > /tmp/field.tar.gz && \ + rm -rf $DEST/*.js $DEST/*.html $DEST/*.json $DEST/assets $DEST/icons && \ + cd $DEST && tar xzf /tmp/field.tar.gz && \ + rm -f /tmp/field.tar.gz" + + rm -f /tmp/field-pwa.tar.gz + + echo "" + echo "Done! Targo Field: https://erp.gigafibre.ca/field/" +fi diff --git a/apps/field/index.html b/apps/field/index.html new file mode 100644 index 0000000..9d3856f --- /dev/null +++ b/apps/field/index.html @@ -0,0 +1,18 @@ + + +
+