20 lines
721 B
JavaScript
20 lines
721 B
JavaScript
import dotenv from 'dotenv';
|
|
import fs from 'fs';
|
|
import path from 'path';
|
|
import { fileURLToPath } from 'url';
|
|
|
|
const __filename = fileURLToPath(import.meta.url);
|
|
const __dirname = path.dirname(__filename);
|
|
|
|
// repo root = two levels up from /backend/config
|
|
const repoRoot = path.resolve(__dirname, '..', '..');
|
|
const env = (process.env.ENV_NAME || 'prod').trim();
|
|
|
|
// Prefer .env.development / .env.production — fall back to plain .env
|
|
const fileA = path.join(repoRoot, `.env.${env}`);
|
|
const fileB = path.join(repoRoot, '.env');
|
|
const chosen = fs.existsSync(fileA) ? fileA : fileB;
|
|
|
|
dotenv.config({ path: chosen });
|
|
|
|
console.log(`[env] loaded ${path.basename(chosen)} → DB_HOST=${process.env.DB_HOST}`); |