feat(deploy): install silencieuse (dashboard) + MAJ GPO clients Léa + procédure Julien — 2026-07-06
Some checks failed
tests / Lint (ruff + black) (push) Failing after 1m58s
tests / Tests unitaires (sans GPU) (push) Failing after 2m8s
tests / Tests sécurité (critique) (push) Has been skipped

Deux canaux de déploiement des clients Léa, en s'appuyant sur l'installeur EXE
v1.0.2 existant (per-user, upgrade-safe, mode /VERYSILENT /CONFIG=).

- Route dashboard `GET /api/fleet/installer` (web_dashboard/app.py, insertion pure,
  125 lignes, 0 suppression) : sert un ZIP {EXE + install_silencieux.bat + enroll.txt
  (SERVER_URL/token injectés via _resolve_public_server_url) + LISEZMOI} pour un poste
  NEUF. L'EXE génère lui-même le machine_id → pas de pré-enregistrement (distinct de
  la voie ZIP download_agent_package). Tri EXE en semver (1.0.10 > 1.0.2). Testée e2e.
- deploy/installer/silent/ : lanceur d'install silencieuse + gabarit enroll + notice.
- deploy/gpo/Deploy-LeaUpdate.ps1 : MAJ upgrade-safe via GPO **logon script user-context**
  (install per-user invisible au contexte SYSTEM). Détection version = **DisplayVersion
  du registre HKCU** (primaire pour install EXE ; le config.txt EXE ne porte PAS la
  version — vérifié sur poste réel), fallback RPA_AGENT_VERSION (installs ZIP).
  Comparaison semver, idempotent, journalisation best-effort silencieuse, non bloquant
  à l'ouverture de session. Options -DryRun / -TargetVersionOverride / -LogShareOverride.
  **Validé sur poste réel .11 (Windows PowerShell 5.1)** : branche « déjà à jour » et
  branche « MAJ requise » (DryRun, 0 install), détection = 1.0.2.
- docs/PROCEDURE_DEPLOIEMENT_LEA_JULIEN.md : procédure (poste neuf / MAJ manuelle / GPO / rollback).
- EXE binaire jamais versionné (deploy/installer/releases/.gitignore).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dom
2026-07-06 10:22:34 +02:00
parent f4bef1de37
commit 48b1fc2800
8 changed files with 547 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
============================================================
Lea - Installation silencieuse (nouveau poste)
============================================================
CE DOSSIER CONTIENT :
- Lea-Setup-vX.Y.Z.exe : l'installeur Lea
- install_silencieux.bat : le lanceur d'installation
- enroll.txt : les parametres d'enrolement a remplir
- LISEZMOI_SILENCIEUX.txt : ce fichier
------------------------------------------------------------
QUAND UTILISER CETTE VOIE ?
------------------------------------------------------------
Pour installer Lea sur un poste qui NE l'a PAS encore.
(Pour METTRE A JOUR un poste deja installe : voir la voie GPO,
ou relancer simplement l'installeur qui detecte l'existant.)
------------------------------------------------------------
PROCEDURE (3 etapes, ~2 min, sans droits administrateur)
------------------------------------------------------------
1. Ouvrir "enroll.txt" avec le Bloc-notes.
Renseigner : USER_NAME, USER_EMAIL, SERVER_URL, API_TOKEN.
(Remplacer les valeurs "CONFIGURE_ME".) Enregistrer.
2. Double-cliquer sur "install_silencieux.bat".
L'installation se deroule sans fenetre d'installation.
Ne pas fermer la fenetre noire avant le message "OK".
3. Verifier que Lea demarre (icone dans la barre des taches,
pres de l'horloge). C'est termine.
------------------------------------------------------------
EN CAS DE PROBLEME
------------------------------------------------------------
- Message "valeurs CONFIGURE_ME" : enroll.txt n'est pas rempli.
- Message "aucun Lea-Setup trouve" : l'EXE n'est pas dans ce dossier.
- Autre erreur : le journal detaille est indique a l'ecran
(dossier %TEMP%, fichier Lea-install-silencieux.log).
Le transmettre a l'administrateur AIVANOV.
============================================================

View File

@@ -0,0 +1,31 @@
# ============================================================
# enroll.txt — Enrolement pour installation SILENCIEUSE
# ------------------------------------------------------------
# Utilise par install_silencieux.bat :
# Lea-Setup-vX.Y.Z.exe /VERYSILENT /CONFIG=enroll.txt
#
# L'installeur lit ce fichier au demarrage et remplit les
# informations d'enrolement SANS interface graphique.
#
# A FAIRE : renseigner les valeurs ci-dessous (remplacer les
# CONFIGURE_ME), enregistrer, puis lancer install_silencieux.bat.
#
# Format : CLE=valeur, une ligne par parametre, # = commentaire.
# NOTE : ce fichier sert l'INSTALL NEUVE. Sur une mise a jour,
# l'installeur preserve tout seul l'identite du poste et
# IGNORE ce fichier (voir la voie GPO).
# ============================================================
# --- Identite du collaborateur ---
USER_NAME=Prenom Nom
USER_EMAIL=prenom.nom@clinique-wallerstein.fr
USER_ID=
# --- Connexion au serveur Lea ---
# Exemples de SERVER_URL :
# LAN clinique (DGX) : http://192.168.1.178:5005/api/v1
# Internet : https://lea.labs.laurinebazin.design/api/v1
SERVER_URL=CONFIGURE_ME
# Token d'authentification (fourni par l'administrateur AIVANOV)
API_TOKEN=CONFIGURE_ME

View File

@@ -0,0 +1,73 @@
@echo off
chcp 65001 >nul 2>&1
setlocal enabledelayedexpansion
title Lea - Installation silencieuse (nouveau poste)
:: ============================================================
:: install_silencieux.bat
:: Installe Lea sur un NOUVEAU poste, sans interface graphique.
::
:: Pre-requis : ce script, l'installeur "Lea-Setup-v*.exe" et
:: "enroll.txt" (rempli) doivent etre dans le MEME dossier.
::
:: Installation PER-USER : aucun droit administrateur requis.
:: ============================================================
set "HERE=%~dp0"
set "ENROLL=%HERE%enroll.txt"
set "LOG=%TEMP%\Lea-install-silencieux.log"
echo.
echo ============================================================
echo Lea - Installation silencieuse (nouveau poste)
echo ============================================================
echo.
:: --- 1. Localiser l'installeur (Lea-Setup-v*.exe, version la plus recente) ---
set "EXE="
for /f "delims=" %%f in ('dir /b /o-n "%HERE%Lea-Setup-v*.exe" 2^>nul') do (
if not defined EXE set "EXE=%HERE%%%f"
)
if not defined EXE (
echo ERREUR : aucun "Lea-Setup-v*.exe" trouve dans ce dossier.
echo Placez ce script a cote de l'installeur Lea.
echo.
pause
exit /b 1
)
echo Installeur detecte : !EXE!
:: --- 2. Verifier enroll.txt ---
if not exist "%ENROLL%" (
echo ERREUR : "enroll.txt" introuvable a cote de ce script.
echo.
pause
exit /b 1
)
findstr /C:"CONFIGURE_ME" "%ENROLL%" >nul 2>&1
if not errorlevel 1 (
echo.
echo ATTENTION : "enroll.txt" contient encore des valeurs CONFIGURE_ME.
echo Ouvrez enroll.txt, renseignez SERVER_URL / API_TOKEN / USER_*,
echo enregistrez, puis relancez ce script.
echo.
pause
exit /b 1
)
:: --- 3. Installation silencieuse (per-user, pas d'admin) ---
echo Installation en cours (silencieuse, ~1-2 min)... ne fermez pas cette fenetre.
"!EXE!" /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /CONFIG="%ENROLL%" /LOG="%LOG%"
set "RC=!errorlevel!"
echo.
if "!RC!"=="0" (
echo Installation terminee - OK.
echo Lea est enrolle et pret. Journal : %LOG%
) else (
echo ERREUR : l'installation a echoue ^(code !RC!^).
echo Consultez le journal : %LOG%
)
echo.
pause
endlocal