Expand description
Grite daemon library
Exposes the daemon’s core components for integration testing and embedding in other applications. The supervisor manages per-repo workers and IPC communication over Unix domain sockets.
§Example
use grite_daemon::supervisor::Supervisor;
use std::time::Duration;
#[tokio::main]
async fn main() {
let supervisor = Supervisor::new(
"/tmp/grite-daemon.sock".to_string(),
Some(Duration::from_secs(300)),
);
supervisor.run(std::future::pending()).await.unwrap();
}Re-exports§
pub use error::DaemonError;pub use signals::setup_signal_handlers;pub use signals::shutdown_signal;pub use supervisor::Supervisor;pub use worker::Worker;pub use worker::WorkerMessage;
Modules§
- error
- Daemon-specific error types
- signals
- Signal handling utilities for graceful daemon shutdown
- state
- Supervisor and Worker state machine definitions
- supervisor
- Supervisor module - manages workers and IPC sockets
- worker
- Worker module - handles commands for a single repo.