pub struct ShipperConfig {Show 16 fields
pub schema_version: String,
pub policy: PolicyConfig,
pub verify: VerifyConfig,
pub readiness: ReadinessConfig,
pub output: OutputConfig,
pub lock: LockConfig,
pub retry: RetryConfig,
pub flags: FlagsConfig,
pub parallel: ParallelConfig,
pub state_dir: Option<PathBuf>,
pub registry: Option<RegistryConfig>,
pub registries: MultiRegistryConfig,
pub webhook: WebhookConfig,
pub encryption: EncryptionConfigInner,
pub storage: StorageConfigInner,
pub rehearsal: RehearsalConfig,
}Expand description
Project-specific configuration loaded from .shipper.toml.
This is the root deserialization target for the config file. Each
field corresponds to a TOML section (e.g. [retry] → RetryConfig).
Use ShipperConfig::load_from_workspace to discover and parse the
file, then ShipperConfig::build_runtime_options to merge CLI
overrides and produce the final RuntimeOptions.
Fields§
§schema_version: StringSchema version for the configuration file (e.g., shipper.config.v1)
policy: PolicyConfigPublish policy configuration
verify: VerifyConfigVerify mode configuration
readiness: ReadinessConfigReadiness check configuration
output: OutputConfigOutput configuration
lock: LockConfigLock configuration
retry: RetryConfigRetry configuration
flags: FlagsConfigFlags configuration
parallel: ParallelConfigParallel publishing configuration
state_dir: Option<PathBuf>Optional custom state directory
registry: Option<RegistryConfig>Optional custom registry configuration (single registry)
registries: MultiRegistryConfigMultiple registry configuration for multi-registry publishing
webhook: WebhookConfigWebhook configuration for publish notifications
encryption: EncryptionConfigInnerEncryption configuration for state files
storage: StorageConfigInnerStorage configuration for cloud storage backends
rehearsal: RehearsalConfigRehearsal registry configuration — opt-in phase-2 proof before live dispatch. See issue #97.
This field parses the [rehearsal] TOML section. It is wired through
to CLI overrides but not yet consumed by the engine — follow-on PRs
under #97 add the phase-2 execution and the gate that refuses live
dispatch unless rehearsal succeeded for the same plan_id.
Implementations§
Source§impl ShipperConfig
impl ShipperConfig
Sourcepub fn load_from_workspace(workspace_root: &Path) -> Result<Option<Self>>
pub fn load_from_workspace(workspace_root: &Path) -> Result<Option<Self>>
Load configuration from workspace root by searching for .shipper.toml
Returns Ok(None) if no config file exists.
Sourcepub fn load_from_file(path: &Path) -> Result<Self>
pub fn load_from_file(path: &Path) -> Result<Self>
Load configuration from a specific file path
Sourcepub fn build_runtime_options(&self, cli: CliOverrides) -> RuntimeOptions
pub fn build_runtime_options(&self, cli: CliOverrides) -> RuntimeOptions
Build RuntimeOptions by merging CLI overrides with config file values.
For Option fields: CLI value takes precedence; falls back to config.
For bool flags: true if either CLI or config enables it (OR).
Sourcepub fn default_toml_template() -> String
pub fn default_toml_template() -> String
Generate a default configuration file content as TOML string
Trait Implementations§
Source§impl Clone for ShipperConfig
impl Clone for ShipperConfig
Source§fn clone(&self) -> ShipperConfig
fn clone(&self) -> ShipperConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more