Files
electric-cherry/docker/docker-compose.yml
T
josh d99711563e Initial commit — SvelteKit fleet manager for T5 Plutonium servers
Ports push_scripts.sh (1497 lines of bash) to a SvelteKit + SQLite web app
that manages a fleet of T5 Plutonium servers running on Komodo. Same push
and beta workflow as the shell script, with a live SSE pipeline view, a
!rt-token-gated auth modal that hard-pauses deployments on stale tokens,
per-file audit diffs, and a Komodo-container deployment target.

- Push/beta engines port the exact filter, held-by-beta, conflict, and
  stale-backup rules from the shell script
- SQLite (better-sqlite3) replaces script_metadata.json; a one-shot
  importer moves legacy state over on first boot
- 16 vitest tests cover push add/update/skip, beta open→rollback,
  open→promote, conflict guards, sweep frozen/manual branches, and IW4M
  login/status parsing
- docker/ + komodo/stack.toml deploy as a managed container on the same
  host as the game servers, /root/zombies bind-mounted at the same path
  the shell script used
2026-09-12 00:23:51 -04:00

27 lines
879 B
YAML

services:
electric-cherry:
build:
context: ..
dockerfile: docker/Dockerfile
image: electric-cherry:latest
container_name: electric-cherry
restart: unless-stopped
ports:
- "3000:3000"
volumes:
# in prod (Komodo host), the game server tree is at /root/zombies
- /root/zombies:/root/zombies:rw
- /root/zombies/.electric-cherry:/data:rw
environment:
SHARED_SCRIPTS: /root/zombies/shared/scripts
SERVERS_ROOT: /root/zombies/t5
REL_DEST: runtime/plutonium/storage/t5/raw/scripts/sp
DB_PATH: /data/cherry.db
LEGACY_METADATA: /root/zombies/script_metadata.json
DEPLOY_KEEP_DAYS: "7"
KOMODO_ADDRESS: ${KOMODO_ADDRESS}
KOMODO_API_KEY: ${KOMODO_API_KEY}
KOMODO_API_SECRET: ${KOMODO_API_SECRET}
IW4M_ADDRESS: ${IW4M_ADDRESS}
IW4M_CLIENT_ID: ${IW4M_CLIENT_ID}