Fleet tools: add Rust version card (probe rustc + nightly latest + rustup update)
Adds Rust to the per-node dev-tool cards: daemon probes rustc → reports 'rust'; nightly checker fetches latest stable from GitHub rust-lang/rust; GET endpoint maps rust→Rust (after docker); one-click update runs 'rustup update stable'. Frontend is data-driven (no change). $HOME/.cargo/bin added to probe candidate dirs. Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
96d1409a23
commit
1a531e91cd
@@ -199,6 +199,7 @@ pub async fn tools(
|
||||
// (probe key, display name, ui key) in display order; `glm` mirrors `claude`.
|
||||
let order = [
|
||||
("docker", "Docker", "docker"),
|
||||
("rust", "Rust", "rust"),
|
||||
("claude", "Claude Code", "claude"),
|
||||
("kimi-cli", "Kimi", "kimi"),
|
||||
("glm", "GLM (Claude Code)", "glm"),
|
||||
@@ -230,7 +231,7 @@ pub async fn tool_update(
|
||||
nodes::get(&state.pool, node_id, user.workspace_id)
|
||||
.await?
|
||||
.ok_or(ApiError::NotFound)?;
|
||||
if !["claude", "glm", "kimi", "ollama"].contains(&tool.as_str()) {
|
||||
if !["claude", "glm", "kimi", "ollama", "rust"].contains(&tool.as_str()) {
|
||||
return Ok(Json(json!({ "ok": false, "output": "tool not updatable" })));
|
||||
}
|
||||
// ~180s: tool updates (npm/uv/brew/installer) legitimately run long.
|
||||
|
||||
Reference in New Issue
Block a user