//! Nautalid binary: **`FROM scratch`** container entrypoint (replaces Alpine base image).
#![forbid(unsafe_code)]
use nautalid::app;
use tracing::error;
#[tokio::main]
async fn main() {
if matches!(
std::env::args().nth(1).as_deref(),
Some("--probe") | Some("probe")
) {
match nautalid::probe::probe_ready_from_env().await {
Ok(()) => return,
Err(e) => {
eprintln!("{e}");
std::process::exit(1);
}
}
}
if let Err(e) = app::run_default().await {
error!(error = %e, "fatal startup or runtime error");
std::process::exit(1);
}
}