From 72833465dc2d61cbc38acd95d4a3da12ea271cd6 Mon Sep 17 00:00:00 2001 From: NotSoToothless <67082114+FURRO404@users.noreply.github.com> Date: Thu, 14 May 2026 00:09:51 -0700 Subject: [PATCH] drop require('dotenv') from ecosystem.config.js files (#1230) TSSBOT has no node_modules/ on the server (no package.json was ever installed for it), so `require('dotenv').config()` crashes pm2 with MODULE_NOT_FOUND when it loads the ecosystem file. The dotenv call was already dead code: every spawned app loads its own .env in its own process (botscript.py, server.js, web/server.js, webhook updater, TSSBOT/start_bot.py all do load_dotenv / require('dotenv').config() themselves). Remove the require from both ecosystem files. Co-authored-by: Claude Opus 4.7 (1M context) --- ecosystem.config.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/ecosystem.config.js b/ecosystem.config.js index a34c308..8485fa1 100644 --- a/ecosystem.config.js +++ b/ecosystem.config.js @@ -1,15 +1,15 @@ -// 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(); +// Single source of truth for runtime config is TSSBOT/.env. start_bot.py +// loads it directly (load_dotenv(_HERE / ".env")). Do NOT add `env:` blocks +// below or `require('dotenv')` here — either would create a second config +// source that can silently shadow .env, and the dotenv require would fail +// outright on hosts that don't have node_modules/ installed in TSSBOT. 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`; +const PY_INTERPRETER = `${DEPLOY_PATH}/../SREBOT/.venv/bin/python`; module.exports = { apps: [