// Single source of truth for runtime config is TSSBOT/.env (loaded here). // Do NOT add `env:` blocks to apps below — they would override the .env values // and create two parallel config sources to reason about. require('dotenv').config(); const DEPLOY_PATH = __dirname; // Reuse SREBOT's venv by default — both bots share BOTS/SHARED and most // runtime deps (discord.py, dotenv, …). Split into TSSBOT/.venv once the // dep sets diverge meaningfully. const PY_INTERPRETER = process.env.TSSBOT_PY_INTERPRETER || `${DEPLOY_PATH}/../SREBOT/.venv/bin/python`; module.exports = { apps: [ // Discord Bot { name: 'tssbot', script: 'start_bot.py', interpreter: PY_INTERPRETER, cwd: DEPLOY_PATH, instances: 1, autorestart: true, watch: false, max_memory_restart: '8000M', log_file: './logs/bot_combined.log', out_file: './logs/bot_out.log', error_file: './logs/bot_error.log', log_date_format: 'YYYY-MM-DD HH:mm:ss Z', merge_logs: true, kill_timeout: 5000, restart_delay: 3000 } // tssbot-api and tssbot-web will be added here once TSSBOT/server.js and // TSSBOT/web/server.js exist. They should read TSSBOT_API_PORT and // TSSBOT_WEB_PORT from .env (mirroring the SREBOT naming convention). ] };