1#![allow(clippy::result_large_err)]
15
16pub mod audit;
18pub mod cache;
19pub(crate) mod file_lock;
20pub mod fs;
21pub mod grpc;
22pub mod host_check;
23pub mod log;
24pub mod network;
25pub mod oci;
26pub mod prom;
27pub mod resize;
28pub mod rootfs;
29pub mod snapshot;
30mod store_io;
31#[cfg(unix)]
32pub mod tee;
33#[cfg(feature = "vm")]
34pub mod vm;
35#[cfg(feature = "vm")]
36pub mod vmm;
37pub mod volume;
38
39#[cfg(feature = "compose")]
41pub mod compose;
42#[cfg(feature = "operator")]
43pub mod operator;
44#[cfg(feature = "pool")]
45pub mod pool;
46#[cfg(feature = "scale")]
47pub mod scale;
48
49pub use audit::{read_audit_log, AuditLog, AuditQuery};
53
54#[cfg(unix)]
56pub use grpc::{
57 AttestationClient, ExecClient, PtyClient, RaTlsAttestationClient, StreamingExec,
58 StreamingExecInput, StreamingPty, StreamingPtyInput,
59};
60#[cfg(unix)]
61pub use grpc::{SealClient, SecretEntry, SecretInjector};
62
63pub use host_check::check_virtualization_support;
65
66pub use network::NetworkStore;
68
69pub use a3s_box_core::StoredImage;
71pub use oci::{CredentialStore, PushResult, RegistryPusher};
72pub use oci::{ImagePuller, ImageReference, ImageStore, RegistryAuth};
73pub use oci::{OciImage, SignResult, SignaturePolicy};
74
75pub use prom::RuntimeMetrics;
77
78pub use snapshot::SnapshotStore;
80
81#[cfg(unix)]
83pub use tee::{seal, unseal};
84#[cfg(unix)]
85pub use tee::{
86 verify_attestation, verify_attestation_with_time, AmdKdsClient, AttestationPolicy,
87 MinTcbPolicy, PolicyResult, VerificationResult,
88};
89#[cfg(unix)]
90pub use tee::{AttestationReport, AttestationRequest, PlatformInfo};
91
92#[cfg(feature = "vm")]
94pub use vm::{BoxState, VmManager};
95#[cfg(feature = "vm")]
96pub use vmm::{
97 Entrypoint, FsMount, InstanceSpec, NetworkInstanceConfig, ShimHandler, TeeInstanceConfig,
98 VmController, VmHandler, VmMetrics, VmmProvider,
99};
100
101pub use resize::{validate_update, ResizeResult, ResourceUpdate};
103
104pub use volume::VolumeStore;
106
107#[cfg(feature = "build")]
110pub use oci::{BuildConfig, Dockerfile, Instruction};
111
112#[cfg(feature = "compose")]
113pub use compose::{ComposeProject, HealthCheckSpec};
114
115#[cfg(feature = "operator")]
116pub use operator::AutoscalerController;
117
118#[cfg(feature = "pool")]
119pub use pool::WarmPool;
120
121#[cfg(feature = "scale")]
122pub use scale::ScaleManager;
123
124pub const VERSION: &str = env!("CARGO_PKG_VERSION");
128
129pub use a3s_box_core::{ATTEST_VSOCK_PORT, EXEC_VSOCK_PORT, PORT_FWD_VSOCK_PORT, PTY_VSOCK_PORT};
130
131pub const DEFAULT_IMAGE_CACHE_SIZE: u64 = 10 * 1024 * 1024 * 1024;