Skip to main content

confium_publish/
lib.rs

1//! Library facade for the `confium-publish` tool.
2//!
3//! The binary (`src/main.rs`) is a thin wrapper over these modules so
4//! that integration tests (`tests/`) can exercise the publishing flow
5//! without spawning a subprocess. Each module is `pub` so tests can
6//! reach the helpers directly.
7
8pub mod cli;
9pub mod load;
10pub mod manifest;
11pub mod output;
12pub mod sign;
13
14// Convenience re-exports for the common types tests and `main` reach for.
15pub use cli::{PublishArgs, parse_algorithm_overrides, parse_interface_overrides};
16pub use load::{
17    CFMPluginMetadata, InterfaceEntry, LoadError, PluginMetadata, open_library, query_interfaces,
18    query_metadata, resolve_algorithms, resolve_interfaces,
19};
20pub use manifest::{
21    ArtifactSection, ConfiumSection, Manifest, ManifestInput, PluginSection, build, to_toml,
22};
23pub use output::{OutputError, OutputPaths, paths_for, sha256_of_file, write_tree};
24pub use sign::{SignError, sign_manifest};