Lot 21 : mise à jour de Loki tenue par la façade (LOKI_UPDATE=rust)

En conteneur, l'image se met à jour par Docker : /api/update rend la
version du Go sans mise à jour disponible et la note Docker,
/api/update/apply la refuse (409). La façade sert ces deux routes quand
LOKI_UPDATE=rust et LOKI_CONTAINER=1 (sysupdate.rs) ; hors conteneur,
loki-rs ne passe pas la variable et le Go garde le remplacement du
binaire.

Parité : parity_update_test.go tire du Go les quatre réponses en
conteneur, rejouées par tests/sysupdate.rs ; TestFacadeMiseAJour côté Go.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016tcGfJWefW5kUGoC2wL8cv
This commit is contained in:
Claude committed 2026-10-15 20:01:37 +00:00
1 parent 090f15615e
commit 25e31c1c26
16 files changed
+318 -1

No files matched your search

+3
View File
@@ -50,6 +50,8 @@ pub struct Ctx {
pub projects: bool,
/// Serveurs MCP tenus par la façade (`LOKI_MCP=rust`).
pub mcp: Option<std::sync::Arc<crate::mcp::Mcp>>,
/// Mise à jour de Loki tenue par la façade (`LOKI_UPDATE=rust`).
pub update: bool,
/// Jeton de l'API interne : une requête qui le porte vient du Go.
pub internal_token: String,
}
@@ -70,6 +72,7 @@ impl Ctx {
|| self.system.is_some()
|| self.projects
|| self.mcp.is_some()
|| self.update
}
/// La requête vient du Go (jeton interne valide) : déjà authentifiée par