feat(deploy): install silencieuse (dashboard) + MAJ GPO clients Léa + procédure Julien — 2026-07-06
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:
5
deploy/installer/releases/.gitignore
vendored
Normal file
5
deploy/installer/releases/.gitignore
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
# L'installeur EXE (~33 Mo binaire) est déposé ici mais JAMAIS versionné.
|
||||
# On garde le dossier + son LISEZMOI, on ignore tout le reste.
|
||||
*
|
||||
!.gitignore
|
||||
!LISEZMOI.txt
|
||||
17
deploy/installer/releases/LISEZMOI.txt
Normal file
17
deploy/installer/releases/LISEZMOI.txt
Normal file
@@ -0,0 +1,17 @@
|
||||
============================================================
|
||||
deploy/installer/releases/ — Depot des installeurs EXE
|
||||
============================================================
|
||||
|
||||
DEPOSER ICI l'installeur "Lea-Setup-vX.Y.Z.exe" (buildé sur .11).
|
||||
|
||||
Le dashboard sert le plus RECENT via la route :
|
||||
GET /api/fleet/installer
|
||||
-> paquet ZIP "Lea-Install-Silencieux-vX.Y.Z.zip"
|
||||
(EXE + install_silencieux.bat + enroll.txt pré-rempli + LISEZMOI)
|
||||
|
||||
L'EXE (~33 Mo binaire) n'est VOLONTAIREMENT pas versionné dans git.
|
||||
Pour pointer ailleurs : variable d'environnement RPA_LEA_RELEASES_DIR.
|
||||
|
||||
Ce fichier LISEZMOI.txt sert uniquement à garder le dossier présent
|
||||
dans le dépôt (l'EXE, lui, est déposé à la main / par script de release).
|
||||
============================================================
|
||||
40
deploy/installer/silent/LISEZMOI_SILENCIEUX.txt
Normal file
40
deploy/installer/silent/LISEZMOI_SILENCIEUX.txt
Normal 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.
|
||||
============================================================
|
||||
31
deploy/installer/silent/enroll.txt
Normal file
31
deploy/installer/silent/enroll.txt
Normal 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
|
||||
73
deploy/installer/silent/install_silencieux.bat
Normal file
73
deploy/installer/silent/install_silencieux.bat
Normal 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
|
||||
Reference in New Issue
Block a user