UI Nuxt/Quasar de gestion / changement / réinitialisation de mot de passe pour Sesame.
Ce dépôt ne contient pas d’API: l’application appelle l’API Sesame via un proxy Nuxt sur le chemin /management/passwd/* (cf. nuxt.config.ts).
- Docker (recommandé) +
make - Un réseau Docker nommé
dev(créé une seule fois) - Accès à une API Sesame (ex. orchestrator) exposant les endpoints
/management/passwd/*
Copier .env.exemple vers .env puis ajuster.
- API_URL: URL de l’API cible (ex:
http://monserverSesame:4000) - API_KEY: jeton Bearer injecté par le proxy sur les requêtes
/management/passwd/* - ACTION: écran par défaut (
menu,change,reset) — utilisé parappConfig.action - USER_LABEL: libellé affiché (ex. “Utilisateur” / “Email”)
- COLOR_*: thème Quasar
HTTPS en dev (optionnel) :
- SESAME_HTTPS_ENABLED:
true|false - SESAME_HTTPS_PATH_KEY / SESAME_HTTPS_PATH_CERT: chemins des certificats (voir
make generate-ssl-cert)
Tout est prévu pour ne pas installer Node/Yarn sur le poste.
- Créer le réseau dev (une fois):
make network-dev- Build de l’image app:
make build- Installer les dépendances (dans le conteneur):
make exec
# puis, dans le shell:
yarn install- Lancer en dev:
make devPar défaut, Nuxt écoute sur 3000 dans le conteneur et est exposé sur l’hôte via APP_WEB_PORT (par défaut 3002, cf. Makefile).
Les tests end-to-end utilisent Playwright avec Chromium dans l’image Dockerfile.test.
- Unit + e2e:
make test- CI locale (lint + unit + e2e + build):
make verifyLes scripts sont définis dans package.json (souvent exécutés via make exec).
yarn dev: Nuxt devyarn test: lint (préparation Nuxt) + unit (Vitest) + e2e (Playwright)yarn ci:yarn testpuisyarn buildyarn start:prod: démarrage “prod” viastart.mjs(rebuild si le hash.envchange)
Le proxy est configuré dans nuxt.config.ts:
- Les requêtes vers
/management/passwd/*sont proxifiées versAPI_URL - Le header
Authorization: Bearer $API_KEYest ajouté automatiquement - TLS côté cible est accepté même si non vérifié (
secure: false)
Endpoints typiquement utilisés par l’UI :
GET /management/passwd/getpoliciesPOST /management/passwd/changePOST /management/passwd/initresetPOST /management/passwd/resetbycodePOST /management/passwd/reset