No reviewers
Labels
No labels
bug
chore
design
dx:ci
dx:database
dx:dotnet
dx:infra
dx:security
dx:tests
dx:ui
etape-1
etape-2
etape-3
etape-4
etape-5
etape-6
etape-7
feature
priority-high
priority-low
priority-medium
security
spec
tech-debt
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
nonobis/Heimdall!174
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/heimdall-92-96-97"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Résumé
PR combinée pour les tickets #92, #96 et #97 — journal d'audit complet et auto-update des agents.
🎫 #92 — Journal d'audit : couverture complète + UI enrichie
Back-end :
Site.Created,Site.Updated(avec OldValue/NewValue JSON),Site.DeletedCamera.Created,Camera.Updated(avec OldValue/NewValue JSON),Camera.Deleted,Camera.StatusChangedAuditLogResponseenrichi avecResourceNameUI :
🎫 #96 — Auto-update agent : mode natif Linux/Windows
Central :
UpdatesController:GET /api/updates/latest(cache 1h stale-while-revalidate, fetch Forgejo releases API)POST /api/agents/{id}/update: déclenchement manuelAutoUpdateEnabledajouté à l'entitéSite+ migration EF CoreAgent :
AgentUpdateService: BackgroundService qui vérifie la version toutes les 12hInstall scripts :
install/install-agent.sh(Linux, systemd, détection arch)install/install-agent.ps1(Windows, Windows Service)UI :
🎫 #97 — Auto-update agent : mode Docker
Agent :
DockerUpdateService: BackgroundService (seulement en mode Docker, viaContainerInfoProvider)/health/liveavec rollback automatiqueSystem.Diagnostics.Process)Docker Compose :
image: eltruncho/heimdall-agent:${AGENT_IMAGE_TAG:-latest}Fichiers clés
src/Heimdall.Web/Controllers/UpdatesController.cssrc/Heimdall.Agent/Services/AgentUpdateService.cssrc/Heimdall.Agent/Services/DockerUpdateService.cssrc/Heimdall.Domain/Entities/Site.cssrc/Heimdall.Application/Audit/Queries/GetAuditLogs/GetAuditLogsQuery.cssrc/Heimdall.Web/Components/Pages/AuditLogsPage.razorsrc/Heimdall.Web/Components/Pages/AgentDetail.razorinstall/install-agent.shinstall/install-agent.ps1CI
dotnet build— 0 erreurs, 0 warningsdotnet format whitespace --verify-no-changes— OKFixes #92
Fixes #96
Fixes #97
- Add AutoUpdateEnabled property to Site entity with EF migration support - Create UpdatesController: GET /api/updates/latest (stale-while-revalidate cache) - Create UpdatesController: POST /api/agents/{id}/update trigger endpoint - Create AgentUpdateService: BackgroundService for native binary auto-update - Periodic checks, version comparison, SHA256 verification, atomic replacement - Platform detection (linux-x64, linux-arm64, win-x64, osx-x64, etc.) - Skips when capture pipeline is active or auto-update is disabled - Add UpdateCheckIntervalHours to AgentOptions (default: 12h) - ConfigReceiverService handles autoUpdateEnabled setting from Central - AgentDetail.razor: Mise à jour SectionCard with version comparison + update button - SitesPage.razor: MudSwitch for AutoUpdateEnabled in site edit dialog - install/install-agent.sh: Linux installer (systemd service, SHA256 verification) - Update all DTOs, commands, handlers for AutoUpdateEnabled propagation Fixes #96🤖 Résumé des tests
Tests unitaires
Pas de résultats (job skippé)
Tests Web (bUnit)
Pas de résultats
Tests DB (Infrastructure)
Pas de résultats
Généré automatiquement par la CI.