Skip to main content

faucet_cli/serve/
mod.rs

1//! `faucet serve` — HTTP control plane (#127). Runs pipeline configs submitted
2//! over HTTP, reusing `executor::run_expanded`. Feature-gated on `serve`;
3//! structured like `cli/src/schedule/`. See
4//! `docs/superpowers/specs/2026-05-30-faucet-serve-design.md`.
5
6pub mod audit;
7pub mod auth;
8pub mod cluster;
9pub mod config;
10pub mod error;
11pub mod handlers;
12pub mod history;
13pub mod idempotency;
14pub mod load;
15pub mod logs;
16pub mod metrics;
17pub mod observability;
18pub mod rbac;
19pub mod registry;
20pub mod runner;
21pub mod server;
22pub mod state;
23#[cfg(feature = "triggers")]
24pub mod triggers;
25#[cfg(feature = "serve-ui")]
26pub mod ui_assets;
27
28pub use config::ServeConfig;
29
30use crate::error::CliResult;
31
32/// Boot the HTTP control plane and serve until SIGTERM/SIGINT.
33pub async fn run_server(config: ServeConfig) -> CliResult<()> {
34    server::serve(config).await
35}