Skip to main content

treetop_bundle/
lib.rs

1//! Compile, validate, sign, and load deterministic Treetop policy bundles.
2
3mod archive;
4mod builder;
5mod diagnostic;
6mod engine;
7mod error;
8mod labels;
9mod manifest;
10mod signing;
11mod validation;
12
13pub use archive::{ArchiveLimits, BundleArchive, ValidatedBundle, VerifiedSignature};
14pub use builder::BundleBuilder;
15pub use diagnostic::{Diagnostic, DiagnosticSeverity};
16pub use engine::{PreparedEngine, PreparedEvaluationSession};
17pub use error::{BundleError, Result};
18pub use labels::{LabelPattern, LabelRule, LabelSet};
19pub use manifest::{BundleManifest, ModuleManifest, ModuleRole, ModuleSelection};
20pub use signing::{BundleSignature, SignaturePolicy, SigningKey, TrustStore, TrustedKey};
21pub use validation::{PolicyCheck, check_module, check_policy};
22
23/// The archive format emitted and accepted by this crate.
24pub const FORMAT_VERSION: u32 = 2;
25
26/// The exact Cedar version used to compile bundles.
27pub const CEDAR_VERSION: &str = "4.12.0";
28
29/// The exact Treetop core version used to prepare policy engines.
30pub const TREETOP_CORE_VERSION: &str = "0.1.0";