diff --git a/app.json b/app.json index 46d2559..9c71126 100644 --- a/app.json +++ b/app.json @@ -1,10 +1,10 @@ { "id": "portail-santinova", - "name": "Portail Applicatif", + "name": "Portails Applicatifs", "category": "INFRA", "urls": { - "recette": "https://portail.recette.santinova-soft.org", - "prod": "https://portail.santinova-soft.org" + "recette": "https://portail-santinova.recette.santinova-soft.org", + "prod": "https://portail-santinova.santinova-soft.org" }, "containerName": "portail-santinova", "image": "images/portail.png", diff --git a/docker-compose.yml b/docker-compose.yml index 5fc27c8..2e3b995 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,7 +9,7 @@ services: - web labels: - "traefik.enable=true" - - "traefik.http.routers.portail-recette.rule=Host(`portail.recette.santinova-soft.org`)" + - "traefik.http.routers.portail-recette.rule=Host(`portail.recette.santinova-soft.org`,`portail-itinova.recette.santinova-soft.org`,`portail-soins-et-sante.recette.santinova-soft.org`,`portail-santinova.recette.santinova-soft.org`,`portail-santelis.recette.santinova-soft.org`)" - "traefik.http.routers.portail-recette.entrypoints=websecure" - "traefik.http.routers.portail-recette.tls.certresolver=letsencrypt" - "traefik.http.services.portail-recette.loadbalancer.server.port=3000" diff --git a/images/ATTRIBUTIONS.md b/images/ATTRIBUTIONS.md index 3ca70a8..468102c 100644 --- a/images/ATTRIBUTIONS.md +++ b/images/ATTRIBUTIONS.md @@ -1,8 +1,9 @@ -# Crédits photographiques — tuiles Infrastructure +# Crédits photographiques — portails applicatifs | Fichier | Tuile | Source | Licence | |---|---|---|---| | `portail.png` | Portail Applicatif | Photo de collaboration en environnement numérique, Unsplash | [Licence Unsplash](https://unsplash.com/license) | | `dashboard.png` | Dashboard Recette | Photo de réseau et de supervision technique, Unsplash | [Licence Unsplash](https://unsplash.com/license) | +| `santelis-gestion.jpg` | SANTELIS Gestion | Healthcare Administration Pictures, Unsplash | [Licence Unsplash](https://unsplash.com/license) | -Les photos sont utilisées pour illustrer les deux tuiles d’infrastructure. Aucun logo, texte ni donnée métier n’est incorporé dans ces visuels. +Les photos sont utilisées pour illustrer les tuiles applicatives. Aucun logo, texte ni donnée métier n’est incorporé dans ces visuels. diff --git a/images/budget-si.jpg b/images/budget-si.jpg new file mode 100644 index 0000000..f8217a6 Binary files /dev/null and b/images/budget-si.jpg differ diff --git a/images/gestion-astreintes-had.jpg b/images/gestion-astreintes-had.jpg new file mode 100644 index 0000000..1b9a57e Binary files /dev/null and b/images/gestion-astreintes-had.jpg differ diff --git a/images/gestion-indus-had.jpg b/images/gestion-indus-had.jpg new file mode 100644 index 0000000..4aa3af3 Binary files /dev/null and b/images/gestion-indus-had.jpg differ diff --git a/images/santelis-gestion.jpg b/images/santelis-gestion.jpg new file mode 100644 index 0000000..4a6b161 Binary files /dev/null and b/images/santelis-gestion.jpg differ diff --git a/images/santino-chat.png b/images/santino-chat.png new file mode 100644 index 0000000..c10f692 Binary files /dev/null and b/images/santino-chat.png differ diff --git a/index.html b/index.html index cfa7fa2..35d0517 100644 --- a/index.html +++ b/index.html @@ -5,532 +5,80 @@ Portail Applicatif — Santinova Soft - - -
-
-
- - - - - - -
-
-
Portail Applicatif
-
Environnement de recette
-
-
-
Recette
-
- - -
- - - -
- - -
- - -
-
-

Applications Itinova

-

Cliquez sur une application pour l'ouvrir dans un nouvel onglet

-
-
-
Chargement des applications…
-
-
- - -
-
-

Applications Santinova

-

Cliquez sur une application pour l'ouvrir dans un nouvel onglet

-
-
-
Chargement des applications…
-
-
- - -
-
-

Infrastructure

-

Accès direct aux services techniques de cet environnement

-
-
-
Chargement des applications…
-
-
- -
- - - - +
Portail Applicatif
Chargement de l'environnement
…
+ +

Chargement du portail…

Les applications de cet environnement sont chargées depuis le dashboard correspondant.

Chargement des applications…
+ diff --git a/test/portal-contract.test.js b/test/portal-contract.test.js index e1a3671..1dec712 100644 --- a/test/portal-contract.test.js +++ b/test/portal-contract.test.js @@ -1,21 +1,132 @@ /* - * Contrat de non-régression du portail dynamique. - * Il bloque les marqueurs de conflit, les doublons de configuration - * et le mélange des URLs recette/production. + * Contrat de non-régression des portails applicatifs par entité. + * Un unique code sert les quatre domaines de chaque environnement, mais le + * domaine courant choisit strictement son dashboard, ses URLs et son groupe. */ const assert = require('node:assert/strict'); const fs = require('node:fs'); const path = require('node:path'); +const vm = require('node:vm'); -const html = fs.readFileSync(path.join(__dirname, '..', 'index.html'), 'utf8'); +const root = path.join(__dirname, '..'); +const html = fs.readFileSync(path.join(root, 'index.html'), 'utf8'); +const script = html.match(/