fix: load environment-specific .env files based on NODE_ENV
- env.js now loads .env.production, .env.preprod, or .env.dev - Removes redundant dotenv.config() from email.service.js - Fixes SMTP config not loading in production/preprod 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
352b941570
commit
d4a8ff261d
|
|
@ -3,8 +3,31 @@
|
|||
* Ce fichier doit être importé en premier dans l'application
|
||||
*/
|
||||
import dotenv from 'dotenv';
|
||||
import path from 'path';
|
||||
import { fileURLToPath } from 'url';
|
||||
|
||||
// Charger les variables d'environnement sans écraser celles fournies par Docker/système
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
const rootDir = path.resolve(__dirname, '../..');
|
||||
|
||||
// Déterminer le fichier .env à charger selon NODE_ENV
|
||||
const nodeEnv = process.env.NODE_ENV || 'development';
|
||||
let envFile = '.env';
|
||||
|
||||
if (nodeEnv === 'production') {
|
||||
envFile = '.env.production';
|
||||
} else if (nodeEnv === 'preproduction') {
|
||||
envFile = '.env.preprod';
|
||||
} else if (nodeEnv === 'development') {
|
||||
envFile = '.env.dev';
|
||||
}
|
||||
|
||||
// Charger d'abord le fichier spécifique à l'environnement
|
||||
const envPath = path.join(rootDir, envFile);
|
||||
console.log(`📁 Chargement config: ${envFile} (NODE_ENV=${nodeEnv})`);
|
||||
dotenv.config({ path: envPath, override: false });
|
||||
|
||||
// Charger aussi .env comme fallback (sans écraser)
|
||||
dotenv.config({ override: false });
|
||||
|
||||
export default {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,8 @@
|
|||
/**
|
||||
* Service d'envoi d'emails avec Nodemailer
|
||||
* Note: Les variables d'environnement sont chargées par src/config/env.js
|
||||
*/
|
||||
import nodemailer from 'nodemailer';
|
||||
import dotenv from 'dotenv';
|
||||
|
||||
dotenv.config();
|
||||
|
||||
// Configuration du transporteur email (créé à la demande pour éviter les problèmes de chargement)
|
||||
let transporter = null;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user