- Intégration du code source du framework dans radar-app/ (vendoring) - Suppression de la dépendance npm aoe_technology_radar - Création de scripts build-radar.js et serve-radar.js pour remplacer le CLI techradar - Adaptation de tous les scripts et Docker pour utiliser radar-app/ au lieu de .techradar - Refactorisation complète de Dockerfile.business - Mise à jour de la documentation (architecture, déploiement, développement) - Mise à jour de .gitignore pour ignorer les artefacts de build de radar-app/ - Ajout de postcss dans les dépendances Docker pour le build Next.js Le projet est maintenant complètement indépendant du package externe. Co-authored-by: Cursor <cursoragent@cursor.com>
54 lines
1.8 KiB
JavaScript
Executable File
54 lines
1.8 KiB
JavaScript
Executable File
#!/usr/bin/env node
|
|
|
|
/**
|
|
* Script de serve pour le radar stand-alone
|
|
* Remplace "techradar serve" en servant soit build/ soit en lançant le dev server Next.js
|
|
*/
|
|
|
|
const fs = require('fs');
|
|
const path = require('path');
|
|
const { execSync } = require('child_process');
|
|
|
|
const CWD = process.cwd();
|
|
const BUILD_DIR = path.join(CWD, 'build');
|
|
const RADAR_APP_DIR = path.join(CWD, 'radar-app');
|
|
const PORT = process.env.PORT || '3000';
|
|
|
|
// Mode: 'build' pour servir build/, 'dev' pour lancer Next.js dev
|
|
const MODE = process.argv[2] || 'build';
|
|
|
|
if (MODE === 'dev') {
|
|
// Mode développement: lancer Next.js dev dans radar-app
|
|
console.log('🚀 Démarrage du serveur de développement Next.js...');
|
|
console.log(`📍 URL: http://localhost:${PORT}/`);
|
|
try {
|
|
process.chdir(RADAR_APP_DIR);
|
|
execSync(`npm run dev -- -p ${PORT}`, { stdio: 'inherit' });
|
|
} catch (e) {
|
|
console.error('Erreur lors du démarrage du serveur dev:', e.message);
|
|
process.exit(1);
|
|
}
|
|
} else {
|
|
// Mode production: servir build/
|
|
if (!fs.existsSync(BUILD_DIR)) {
|
|
console.error(`❌ Dossier build/ introuvable. Lancez d'abord: npm run build`);
|
|
process.exit(1);
|
|
}
|
|
console.log(`🚀 Démarrage du serveur statique sur http://localhost:${PORT}/`);
|
|
console.log(`📁 Servant: ${BUILD_DIR}`);
|
|
try {
|
|
// Utiliser npx serve si disponible, sinon python http.server
|
|
try {
|
|
execSync(`npx serve@latest "${BUILD_DIR}" --listen ${PORT}`, { stdio: 'inherit' });
|
|
} catch (e) {
|
|
// Fallback sur python
|
|
console.log('⚠️ npx serve non disponible, utilisation de python http.server');
|
|
process.chdir(BUILD_DIR);
|
|
execSync(`python3 -m http.server ${PORT}`, { stdio: 'inherit' });
|
|
}
|
|
} catch (e) {
|
|
console.error('Erreur lors du démarrage du serveur:', e.message);
|
|
process.exit(1);
|
|
}
|
|
}
|