6 Commits

Author SHA1 Message Date
gilles 6cd910dbc0 feat(agent-scan-network): MQTT + configs exemples + ROADMAP Phase 6
- mqtt.rs : publication résumé scan sur sentinelmesh/<host>/network/scan
- Config MQTT dans les deux agents (enabled: false par défaut)
- ROADMAP Phase 6 complète : SSE, historique, Prometheus, MQTT 

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 06:32:57 +02:00
gilles 0e1eafc81e feat(ci): pipelines Gitea Actions CI + release multi-arch
- ci.yaml : cargo check + clippy (-D warnings) + fmt + tests sur push/PR main
- release.yaml : build cross (amd64/arm64/armv7) via cross-rs, création release
  Gitea avec binaires nommés par architecture sur tag v*
- ROADMAP Phase 5 marquée complète

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 06:26:22 +02:00
gilles 8a8641e9cd feat(widgets): implémentation Phase 4 — widgets Glance complets
- widget-network-scan : liste équipements avec état (online/offline),
  hostname, IP, vendor, badges services, tri online en premier
- widget-agent-metrics : barres CPU/RAM/disque/température par agent,
  code couleur ok (vert) / warn (orange) / crit (rouge)
- sentinelmesh.css : styles custom (points statut, badges, barres de
  progression animées) compatibles thèmes Glance
- glance-page-example.yaml : page Infrastructure prête à l'emploi
- Backend widgets enrichi : mac, ports, offline count, net_rx/tx_bps
- ROADMAP Phase 4 marquée complète

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 06:21:57 +02:00
gilles 6bda1a2b59 feat(agent-metric): implémentation Phase 3 — métriques système
- Collecte temps réel (1s) : CPU, RAM, charge réseau, top 5 processus
- Collecte medium (30min) : disques via sysinfo, températures hwmon, SMART smartctl
- Collecte statique (boot) : DMI/BIOS via /sys, interfaces réseau, CPU model
- API locale Axum sur :9101 — GET /metrics (réaltime + medium + hardware)
- Push backend : /api/v1/metrics (réaltime + medium) et /api/v1/events (hardware, boot)
- Architecture modulaire : collectors/realtime, medium, static_info
- ROADMAP Phase 3 marquée complète

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 06:18:08 +02:00
gilles 57b5fd6b77 feat(agent-scan-network): implémentation Phase 2 — découverte réseau
- Scan ping TCP multi-ports (sans root requis)
- Lecture table ARP Linux (/proc/net/arp)
- Détection 20 services par scan de ports TCP
- Base OUI embarquée (~70 constructeurs courants)
- API JSON locale Axum sur :9100 (GET /devices, GET /health)
- Push automatique vers backend /api/v1/network
- Enregistrement agent au démarrage
- Config YAML (subnet 10.0.0.0/22, concurrence, timeouts)
- ROADMAP Phase 1 et 2 marquées complètes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 06:13:24 +02:00
gilles 7cf56f24ef chore: initialise la structure du projet SentinelMesh
- Workspace Cargo avec backend, agent-scan-network, agent-metric
- Skeleton Rust pour les trois crates (Axum, Tokio, SQLx)
- Documentation : README, FEATURES, ROADMAP, ARCHITECTURE, API, INSTALL
- Exemples de widgets Glance (custom-api)
- Script d'installation agents (squelette Phase 5)
- Docker Compose + Dockerfile backend
- .gitignore et CLAUDE.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 05:59:12 +02:00