feat: page mises à jour avec liste des paquets par cible

- Backend: GET /api/updates/targets (pct list via SSH)
- Backend: GET /api/updates/packages?target= (apt list --upgradable)
- Frontend: grille de cards par cible (host + chaque LXC)
- Bouton Check/Update par card, liste paquets dépliable (version actuelle → nouvelle)
- Boutons globaux "Tout vérifier" et "Tout mettre à jour"

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
enzo 2026-03-21 01:10:47 +01:00
parent c6028b6951
commit 82e3b850d0
5 changed files with 493 additions and 102 deletions

View file

@ -146,6 +146,8 @@ func main() {
r.Group(func(r chi.Router) {
r.Use(api.RequireAdmin)
r.Post("/api/updates/run", updatesHandler.RunUpdate)
r.Get("/api/updates/targets", updatesHandler.GetTargets)
r.Get("/api/updates/packages", updatesHandler.GetPackages)
})
r.Get("/api/updates/history", updatesHandler.GetHistory)