Skip to main content

microsandbox_types/
lib.rs

1//! Shared task and wire contract types for microsandbox.
2
3#![warn(missing_docs)]
4
5mod cloud;
6mod domain;
7mod error;
8pub mod modify;
9#[cfg(feature = "ts")]
10pub mod typescript;
11mod validation;
12
13//--------------------------------------------------------------------------------------------------
14// Exports
15//--------------------------------------------------------------------------------------------------
16
17pub use cloud::{
18    CloudCreateSandboxRequest, CloudErrorBody, CloudErrorDetails, CloudMessageResponse,
19    CloudPaginated, CloudSandbox, CloudSandboxStatus,
20};
21pub use domain::{
22    DEFAULT_METRICS_SAMPLE_INTERVAL_MS, DEFAULT_SANDBOX_CPUS, DEFAULT_SANDBOX_MEMORY_MIB,
23    DiskImageFormat, EnvVar, HandoffInit, HostPermissions, LogSource, MountOptions,
24    NamedVolumeCreate, NamedVolumeMode, NetworkSpec, OciRootfsSource, Patch, PortProtocol,
25    PublishedPortSpec, PullPolicy, Rlimit, RlimitResource, RootfsSource, SandboxLogLevel,
26    SandboxPolicy, SandboxResources, SandboxRuntimeOptions, SandboxSpec, SecurityProfile,
27    SnapshotDestination, SnapshotSpec, StatVirtualization, VolumeKind, VolumeMount, VolumeSpec,
28};
29pub use error::{TypesError, TypesResult};
30pub use modify::{
31    ChangeKind, ConfigPlannedChange, ModificationConflict, ModificationDisposition,
32    ModificationPolicy, ModificationWarning, PlannedChange, ResourceConvergenceState, ResourceKind,
33    ResourceResizeStatus, SandboxModificationPatch, SandboxModificationPlan, SecretChangeKind,
34    SecretModificationPatch, SecretPlannedChange, SecretSource,
35};
36pub use validation::{
37    MAX_HOSTNAME_BYTES, MAX_SANDBOX_NAME_BYTES, hostname_from_sandbox_name, validate_hostname,
38    validate_sandbox_name,
39};