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:
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