#!/usr/bin/env node // Script de démarrage qui injecte les variables NEXT_PUBLIC_* au runtime const { spawn } = require('child_process'); const path = require('path'); // Variables d'environnement par défaut (surchargées par les variables du conteneur) const defaultEnv = { NEXT_PUBLIC_BACK_API_PROTOCOL: 'https', NEXT_PUBLIC_BACK_API_HOST: 'localhost', NEXT_PUBLIC_BACK_API_PORT: '443', NEXT_PUBLIC_BACK_API_ROOT_URL: '/api', NEXT_PUBLIC_BACK_API_VERSION: 'v1', NEXT_PUBLIC_FRONT_APP_HOST: 'http://localhost:3000', NEXT_PUBLIC_IDNOT_BASE_URL: 'https://qual-connexion.idnot.fr', NEXT_PUBLIC_IDNOT_AUTHORIZE_ENDPOINT: '/IdPOAuth2/authorize/idnot_idp_v1', NEXT_PUBLIC_IDNOT_CLIENT_ID: 'default_client_id', NEXT_PUBLIC_IDNOT_REDIRECT_URI: 'http://localhost:3000/authorized-client', NEXT_PUBLIC_IDNOT_REDIRECT_URI_FIXED: 'https://lecoffreio.4nkweb.com/authorized-client', NEXT_PUBLIC_4NK_URL: 'http://localhost:3000', NEXT_PUBLIC_4NK_IFRAME_URL: 'http://localhost:3000', NEXT_PUBLIC_BACK_BASE: 'http://localhost:8080', NEXT_PUBLIC_API_URL: 'http://localhost:8080/api', NEXT_PUBLIC_DEFAULT_VALIDATOR_ID: 'default_validator_id', NEXT_PUBLIC_DEFAULT_STORAGE_URLS: 'http://localhost:8080/storage', NEXT_PUBLIC_DOCAPOSTE_API_URL: '', NEXT_PUBLIC_HOTJAR_SITE_ID: '', NEXT_PUBLIC_HOTJAR_VERSION: '' }; // Fusionner les variables d'environnement const env = { ...defaultEnv, ...process.env }; console.log('Starting Next.js with runtime environment variables...'); // Démarrer Next.js avec les variables injectées const nextProcess = spawn('npm', ['start'], { env: env, stdio: 'inherit', cwd: __dirname }); nextProcess.on('exit', (code) => { console.log(`Next.js process exited with code ${code}`); process.exit(code); }); nextProcess.on('error', (err) => { console.error('Failed to start Next.js:', err); process.exit(1); });