Skip to main content

Crate grite_daemon

Crate grite_daemon 

Source
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.