From 067bab125b77a1dfb9db7cdc099908d7621684f9 Mon Sep 17 00:00:00 2001 From: Danny Date: Sun, 10 May 2026 13:12:09 +0200 Subject: [PATCH] sunken-ship: shipyard staging uses shipyard_poc_bot token shipyard_poc_bot is the shared "POC slot" Telegram bot that hosts whatever experiment is currently being staged; B3Bot staging is just the current tenant. Repoint EnvironmentFile and ConditionPathExists at /home/danny/.secrets/shipyard_poc_bot.env. Co-Authored-By: Claude Opus 4.7 (1M context) --- nixos/hosts/sunken-ship.nix | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/nixos/hosts/sunken-ship.nix b/nixos/hosts/sunken-ship.nix index c66010f..39e54bf 100644 --- a/nixos/hosts/sunken-ship.nix +++ b/nixos/hosts/sunken-ship.nix @@ -213,12 +213,14 @@ # ── Shipyard staging — second instance for verifying changes pre-prod ─ # Working dir: /home/danny/tg_fitness_bot_shipyard (separate clone of the same repo). # Branch: origin/staging (push there to deploy here; push to origin/main for prod). - # Bot token (separate from prod): /home/danny/.secrets/bigbiggerbiggestbot-shipyard.env - # File contents: BOT_TOKEN= + # Bot: shipyard_poc_bot — the shared "POC slot" Telegram bot. While B3Bot + # staging is the active POC, shipyard_poc_bot polls into this service. + # Token file: /home/danny/.secrets/shipyard_poc_bot.env + # File contents: BOT_TOKEN= # Service won't start until this file exists (ConditionPathExists). # Mini App URL: ephemeral cloudflared Quick Tunnel (no VPS Caddy). - # Workflow: git push origin :staging → wait ~15 min → /start the - # shipyard bot in Telegram → test → git push origin :main. + # Workflow: git push origin :staging → wait ~15 min → /start + # shipyard_poc_bot in Telegram → test → git push origin :main. systemd.services.fitness-bot-shipyard = let pythonEnv = pkgs.python3.withPackages (ps: with ps; [ python-telegram-bot @@ -234,10 +236,10 @@ environment.API_HOST = "::"; environment.API_PORT = "8081"; # No WEBAPP_URL — start.py spins up its own ephemeral cloudflared tunnel. - unitConfig.ConditionPathExists = "/home/danny/.secrets/bigbiggerbiggestbot-shipyard.env"; + unitConfig.ConditionPathExists = "/home/danny/.secrets/shipyard_poc_bot.env"; serviceConfig = { WorkingDirectory = "/home/danny/tg_fitness_bot_shipyard"; - EnvironmentFile = "/home/danny/.secrets/bigbiggerbiggestbot-shipyard.env"; + EnvironmentFile = "/home/danny/.secrets/shipyard_poc_bot.env"; ExecStart = "${pythonEnv}/bin/python start.py"; Restart = "on-failure"; RestartSec = 10;