towerops-agent/Cargo.toml
Graham McIntire cd45e9ff51
feat: add agent-side ICMP ping health monitoring
Implements health monitoring in the agent using ICMP ping, allowing
devices assigned to local (non-cloud) agents to be monitored.

Changes:
- Add surge-ping library for async ICMP ping operations
- Create ping.rs module with ping_device() function (5s timeout)
- Rename JobType::MONITOR to JobType::PING in protobuf
- Add monitoring_check channels for result communication
- Implement execute_ping_job() to handle PING jobs
- Update TUI to display ping result events

The agent now receives PING jobs from Phoenix, executes ICMP pings,
and sends MonitoringCheck results back for storage in the database.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-08 13:44:09 -06:00

44 lines
1.1 KiB
TOML

[package]
name = "towerops-agent"
version = "0.1.0"
edition = "2021"
[dependencies]
snmp2 = { version = "0.4", features = ["v3", "tokio"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync", "time", "net", "signal", "io-util"] }
thiserror = "2"
tokio-tungstenite = { version = "0.28", features = ["rustls-tls-webpki-roots"] }
tokio-rustls = "0.26"
futures = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
clap = { version = "4.5", features = ["derive", "env"] }
prost = "0.14"
prost-types = "0.14"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
russh = "0.57"
async-trait = "0.1"
home = "=0.5.12"
zeroize = { version = "1", features = ["derive"] }
hostname = "0.4"
anyhow = "1.0"
surge-ping = "0.8"
rand = "0.8"
# TUI dependencies (optional feature)
ratatui = { version = "0.30", optional = true }
crossterm = { version = "0.28", optional = true }
[features]
default = ["tui"]
tui = ["ratatui", "crossterm"]
[build-dependencies]
prost-build = "0.14"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
strip = true