Checkpoint: Correction du runtime Docker : Vite et sa configuration sont maintenant chargés uniquement en développement via imports indirects. Le bundle serveur de production ne référence plus Vite ni ses plugins ; 31 tests, TypeScript et build validés.
Some checks failed
Validation applicative / TypeScript, tests et build (push) Failing after 3m22s
Some checks failed
Validation applicative / TypeScript, tests et build (push) Failing after 3m22s
This commit is contained in:
@@ -3,10 +3,18 @@ import fs from "fs";
|
||||
import { type Server } from "http";
|
||||
import { nanoid } from "nanoid";
|
||||
import path from "path";
|
||||
import { createServer as createViteServer } from "vite";
|
||||
import viteConfig from "../../vite.config";
|
||||
|
||||
export async function setupVite(app: Express, server: Server) {
|
||||
// Vite et sa configuration sont des dépendances de développement. Les imports
|
||||
// indirects empêchent esbuild de les intégrer au bundle serveur de production.
|
||||
const vitePackageName = "vite";
|
||||
const viteConfigPath = "../../vite.config";
|
||||
const [viteModule, viteConfigModule] = await Promise.all([
|
||||
import(vitePackageName),
|
||||
import(viteConfigPath),
|
||||
]);
|
||||
const createViteServer = viteModule.createServer as typeof import("vite").createServer;
|
||||
const viteConfig = viteConfigModule.default;
|
||||
const serverOptions = {
|
||||
middlewareMode: true,
|
||||
hmr: { server },
|
||||
|
||||
3
todo.md
3
todo.md
@@ -733,8 +733,9 @@
|
||||
- [x] Vérifier TypeScript, tests, build et authentification OAuth2 réelle
|
||||
|
||||
## Déploiement ImapFlow — recette et production
|
||||
- [ ] Pousser la version ImapFlow vers le dépôt Gitea de recette
|
||||
- [x] Pousser la version ImapFlow vers le dépôt Gitea de recette
|
||||
- [x] Réduire l’image runtime Docker pour fiabiliser le build sur le serveur de recette
|
||||
- [x] Charger Vite uniquement en développement pour l’exclure de l’image runtime
|
||||
- [ ] Déployer et valider HTTP, conteneurs et OAuth2 ImapFlow en recette
|
||||
- [ ] Pousser la version validée vers le dépôt Gitea de production
|
||||
- [ ] Déployer et valider HTTP, conteneurs et OAuth2 ImapFlow en production
|
||||
|
||||
Reference in New Issue
Block a user