SCENEGOD/deploy/deploy.sh
type-two 128e24a7cb [deploy] digalot.fyi hosting: prefix-agnostic frontend, ship-check hardening, docker+nginx kit
- web: all URLs relative (imports ./web/..., fetches assets/...) so the app
  serves at / locally and under /scenegod/ behind nginx; esc() on dock
  innerHTML interpolations (ship-check XSS class)
- server: capped_body on every POST (scenes 5MB, frames 25MB, meta/director
  256KB-1MB), render begin sanity (fps<=60, dims<=4096, frame idx<=20000)
- deploy/: Dockerfile (slim+ffmpeg), compose (project 'scenegod' — avoids
  the shared-'deploy'-project orphan trap with meshgod), nginx location
  (suite basic-auth), deploy.sh (rsync model, meshgod-style)
- live: digalot.fyi/scenegod/ -> 401 unauthed, app healthy on dealgod_default

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-21 02:43:26 +10:00

10 lines
484 B
Bash
Executable File

#!/bin/bash
# rsync-deploy scenegod to the dealgod VPS (NOT a git checkout there — meshgod model).
set -e
VPS=root@100.94.195.115
rsync -az --delete \
--exclude .git --exclude .venv --exclude assets --exclude scenes \
--exclude renders --exclude '*.pyc' --exclude __pycache__ --exclude .env \
"$(cd "$(dirname "$0")/.." && pwd)/" "$VPS":/opt/scenegod/
ssh "$VPS" 'mkdir -p /opt/scenegod-data/{assets,scenes,renders} && cd /opt/scenegod/deploy && docker compose up -d --build'