Skip to main content

Crate shipper_config

Crate shipper_config 

Source
Expand description

§Configuration

Project-specific configuration for Shipper via .shipper.toml.

This crate loads, validates, and merges configuration from three layers (highest priority first):

  1. CLI flags — passed via CliOverrides
  2. Config file.shipper.toml in the workspace root
  3. Built-in defaults — sensible defaults for all settings

The central type is ShipperConfig, which maps 1:1 to the TOML file and exposes ShipperConfig::build_runtime_options to produce the final RuntimeOptions used by the engine.

§Sections

TOML sectionRust typeControls
[policy]PolicyConfigSafety vs speed preset
[verify]VerifyConfigPre-publish compilation check
[readiness]ReadinessConfigPost-publish visibility polling
[output]OutputConfigEvidence capture line count
[lock]LockConfigDistributed lock timeout
[retry]RetryConfigRetry strategy and backoff
[flags]FlagsConfigGit-dirty, ownership, etc.
[parallel]ParallelConfigConcurrent publishing
[registry]RegistryConfigCustom registry
[registries]MultiRegistryConfigMulti-registry publishing
[webhook]WebhookConfigPublish notifications
[encryption]EncryptionConfigInnerState file encryption
[storage]StorageConfigInnerCloud storage backend

Modules§

runtime
Runtime-options conversion helpers (previously shipper-config-runtime). Conversion layer from shipper_config model types to shared shipper_types.

Structs§

CliOverrides
CLI flag overrides for merging with config file values.
EncryptionConfig
Encryption configuration
EncryptionConfigInner
Nested encryption configuration
FlagsConfig
Nested flags configuration
LockConfig
Nested lock configuration
MultiRegistryConfig
Multiple registry configuration
OutputConfig
Nested output configuration
ParallelConfig
Configuration for parallel publishing.
PolicyConfig
Nested policy configuration
ReadinessConfig
Configuration for readiness verification after publishing.
Registry
Represents a Cargo registry for publishing crates.
RegistryConfig
Registry configuration - supports both single registry and multiple registries
RehearsalConfig
Rehearsal registry configuration.
RetryConfig
Nested retry configuration
RuntimeOptions
Runtime configuration options for a Shipper publish operation.
ShipperConfig
Project-specific configuration loaded from .shipper.toml.
StorageConfigInner
Nested storage configuration for cloud storage backends
VerifyConfig
Nested verify configuration
WebhookConfig
Webhook configuration

Enums§

PublishPolicy
Policy presets that control the balance between safety and speed in publishing.
ReadinessMethod
Method for verifying crate visibility after publishing.
VerifyMode
Controls when and how cargo verify is run before publishing.

Functions§

deserialize_duration
Deserialize a Duration from either a human-readable string or a millisecond integer.
serialize_duration
Serialize a Duration as milliseconds (u64) for stable round-tripping.