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 command;
7mod domain;
8mod error;
9pub mod modify;
10mod validation;
11
12#[cfg(feature = "ts")]
13pub mod typescript;
14
15//--------------------------------------------------------------------------------------------------
16// Exports
17//--------------------------------------------------------------------------------------------------
18
19pub use cloud::{
20    CloudCreateSandboxRequest, CloudCreateSandboxResponse, CloudDiskImageFormat, CloudErrorBody,
21    CloudErrorDetails, CloudHostPattern, CloudMessageResponse, CloudNetworkSpec, CloudPaginated,
22    CloudPatch, CloudPullPolicy, CloudRlimit, CloudRlimitResource, CloudRootfsSource,
23    CloudSandboxResources, CloudSandboxRuntimeOptions, CloudSandboxSpec, CloudSandboxStatus,
24    CloudSandboxStatusReason, CloudSecretEntry, CloudSecretSource, CloudSecretsConfig,
25    CloudViolationAction, CloudVolumeMount,
26};
27#[doc(hidden)]
28pub use command::{CommandResolutionError, ResolvedCommand, resolve_default_command};
29pub use domain::{
30    Action, CertCacheConfig, CpuPlacement, DEFAULT_METRICS_SAMPLE_INTERVAL_MS,
31    DEFAULT_SANDBOX_CPUS, DEFAULT_SANDBOX_MEMORY_MIB, DeploymentProfile, Destination,
32    DestinationGroup, Direction, DiskImageFormat, DnsConfig, EnvVar, FlatClone, HandoffInit,
33    HostPattern, HostPermissions, InterceptCaConfig, InterfaceOverrides, LogSource,
34    MAX_SECRET_PLACEHOLDER_BYTES, MemoryPlacement, MountOptions, NamedVolumeCreate,
35    NamedVolumeMode, NetworkPolicy, NetworkRateLimitDirection, NetworkRateLimiterConfig,
36    NetworkSpec, NumaPlacement, OciRootfsSource, Patch, PlacementProfile, PortProtocol, PortRange,
37    Protocol, PublishedPortSpec, PullPolicy, RateLimitConfigError, RateLimiterConfig, Rlimit,
38    RlimitResource, RootDisk, RootfsSource, Rule, SandboxLogLevel, SandboxPolicy, SandboxResources,
39    SandboxRuntimeOptions, SandboxSpec, ScopedUpstreamCaCert, ScopedVerifyUpstream,
40    SecretConfigError, SecretEntry, SecretInjection, SecretsConfig, SecurityProfile, SnapshotSpec,
41    StatVirtualization, TlsConfig, TokenBucketConfig, TransparentHugePagePolicy, ViolationAction,
42    VolumeKind, VolumeMount, VolumeSpec, VsockRouteSpec, VsockSocketType, VsockSpec,
43};
44pub use error::{TypesError, TypesResult};
45pub use modify::{
46    ChangeKind, ConfigPlannedChange, ModificationConflict, ModificationDisposition,
47    ModificationPolicy, ModificationWarning, PlannedChange, ResourceConvergenceState, ResourceKind,
48    ResourceResizeStatus, SandboxModificationPatch, SandboxModificationPlan, SecretChangeKind,
49    SecretModificationPatch, SecretPlannedChange, SecretSource,
50};
51pub use validation::{
52    MAX_HOSTNAME_BYTES, MAX_SANDBOX_NAME_BYTES, hostname_from_sandbox_name, validate_hostname,
53    validate_sandbox_name,
54};