Checkpoint: Préparation recette-production : manifeste Budget SI aligné avec le registre dashboard, visuel de portail sélectionné, et label Traefik paramétrable par BUDGET_SI_DOMAIN afin que la production réponde sur son URL dédiée. Vérification complète réussie : 60 tests, TypeScript et build.
All checks were successful
Validation applicative / TypeScript, tests et build (push) Successful in 2m22s

This commit is contained in:
Manus
2026-08-30 09:07:15 +00:00
parent 7ee4e848d2
commit 6447389cb8
5 changed files with 35 additions and 4 deletions

View File

@@ -0,0 +1,22 @@
import { readFile } from "node:fs/promises";
import { resolve } from "node:path";
import { describe, expect, it } from "vitest";
describe("manifeste applicatif Budget SI", () => {
it("déclare les environnements, la catégorie et le dépôt Gitea attendus", async () => {
const raw = await readFile(resolve(process.cwd(), "app.json"), "utf8");
const manifest = JSON.parse(raw) as Record<string, unknown>;
expect(manifest).toMatchObject({
id: "itinova-budget-si",
name: "Gestion budget informatique",
category: "SANTINOVA",
giteaRepo: "manus-admin/itinova-budget-si",
image: "images/budget-si.jpg",
urls: {
recette: "https://budget-si.recette.santinova-soft.org",
prod: "https://budget-si.santinova-soft.org",
},
});
});
});

View File

@@ -8,5 +8,6 @@ describe("docker-compose de recette", () => {
expect(compose).toContain("DATABASE_URL=mysql://budget_user:BudgetSI2027!@itinova-budget-si-db:3306/budget_si");
expect(compose).not.toContain("DATABASE_URL=mysql://budget_user:BudgetSI2027!@db:3306/budget_si");
expect(compose).toContain("BUDGET_SI_DOMAIN:-budget-si.recette.santinova-soft.org");
});
});