tuff_console/lib.rs
1//! The Tuff console server (RFC-108): stores the reports that
2//! `tuff console publish` sends and serves them over HTTP.
3//!
4//! [`store`] owns the SQLite file: schema and migrations, report ingest with
5//! deduplication, the audit events and inventory computed on ingest, and
6//! publish keys. [`oidc`] verifies the GitHub Actions tokens that publish
7//! without a secret. [`server`] owns the HTTP API and the rules for which
8//! address the server may bind, and [`ui`] embeds the web pages it serves
9//! at `/`. [`views`] shapes stored reports for those pages and [`demo`]
10//! generates the sample data of `--demo`. The `tuff` binary wires them to
11//! `tuff console serve` and `tuff console key`.
12
13pub mod demo;
14pub mod events;
15pub mod oidc;
16pub mod server;
17pub mod store;
18pub mod ui;
19pub mod views;
20
21pub use oidc::{Trust, Verifier};
22pub use server::{ServeConfig, ServerOptions, check_bind, router, run, serve};
23pub use store::{
24 EventFilter, EventRow, IngestOutcome, KeyGrant, KeyInfo, ProjectRow, Store, default_data_dir,
25};