Add controlled post_install/pre_start hook schema to AppDefinition: LifecycleHooks/HookStep (Exec | CopyFromHost)/HostCopy with allowlist validation (relative src, no '..', absolute container dest, non-empty exec). Re-exported from the crate root. Design: docs/manifest-hooks-design.md. Also add the missing generated_secrets: vec![] field to three pre-existing ContainerConfig test literals (the field was added to the struct in 03a4ee1b but the container crate's own tests were never rerun, so -p archipelago-container failed to compile). cargo test green: 53 pass. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
21 lines
804 B
Rust
21 lines
804 B
Rust
pub mod bitcoin_simulator;
|
|
pub mod health_monitor;
|
|
pub mod manifest;
|
|
pub mod podman_client;
|
|
pub mod port_manager;
|
|
pub mod runtime;
|
|
|
|
pub use bitcoin_simulator::{BitcoinSimulationMode, BitcoinSimulator};
|
|
pub use health_monitor::HealthMonitor;
|
|
pub use manifest::{
|
|
AppInterface, AppManifest, BuildConfig, ContainerConfig, Dependency, DerivedEnv, GeneratedFile,
|
|
GeneratedSecret, HealthCheck, HookStep, HostCopy, HostFacts, LifecycleHooks, ManifestError,
|
|
ResolvedSource, ResourceLimits, SecretEnv, SecretGenKind, SecretsProvider, SecurityPolicy,
|
|
Volume,
|
|
};
|
|
pub use podman_client::{
|
|
image_uses_insecure_registry, ContainerState, ContainerStatus, PodmanClient,
|
|
};
|
|
pub use port_manager::{PortError, PortManager};
|
|
pub use runtime::{AutoRuntime, ContainerRuntime, DockerRuntime, PodmanRuntime};
|