feat: portage complet en Rust (axum + sysinfo + tera)

Remplacement du backend Python/Flask par un binaire Rust natif.
Stack : axum (web), sysinfo (metriques), lettre (SMTP), tera (templates), argon2 (auth).
Binaire Windows 6.3 Mo sans dependance runtime.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dom
2026-04-13 15:55:36 +02:00
parent 61d17968a0
commit 545ae921e5
12 changed files with 4029 additions and 60 deletions

View File

@@ -1,11 +1,11 @@
{% extends "base.html" %}
{% block title %}Supervision - Alertes{% endblock %}
{% block title %}Supervision - Alertes{% endblock title %}
{% block content %}
<div class="d-flex justify-content-between align-items-center mb-3">
<h4 class="mb-0"><i class="bi bi-bell"></i> Historique des alertes</h4>
{% if alerts %}
<form method="POST" action="{{ url_for('clear_alerts') }}">
<form method="POST" action="/alerts/clear">
<button type="submit" class="btn btn-sm btn-outline-danger"
onclick="return confirm('Effacer tout l\'historique ?')">
<i class="bi bi-trash"></i> Effacer l'historique
@@ -35,10 +35,10 @@
{% for alert in alerts %}
<tr>
<td class="text-nowrap">
<small>{{ alert.timestamp[:19] | replace('T', ' ') }}</small>
<small>{{ alert.timestamp | truncate(length=19, end="") | replace(from="T", to=" ") }}</small>
</td>
<td>
{% if alert.type == 'process_down' %}
{% if alert.type == "process_down" %}
<span class="badge bg-danger">Processus</span>
{% else %}
<span class="badge bg-warning text-dark">Seuil</span>
@@ -57,4 +57,4 @@
{{ alerts | length }} alerte(s) — les 500 dernieres sont conservees.
</div>
{% endif %}
{% endblock %}
{% endblock content %}