pub struct ZPipeline {
pub version: Option<String>,
pub vars: HashMap<String, String>,
pub defaults: PipelineDefaults,
pub images: IndexMap<String, PipelineImage>,
pub cache: Option<PipelineCacheConfig>,
pub push: PushConfig,
}Expand description
Top-level ZPipeline.yaml representation.
A pipeline coordinates building multiple container images with dependency ordering, shared configuration, and coordinated push operations.
§YAML Example
version: "1"
vars:
VERSION: "1.0.0"
REGISTRY: "ghcr.io/myorg"
defaults:
format: oci
build_args:
RUST_VERSION: "1.90"
images:
base:
file: images/Dockerfile.base
tags:
- "${REGISTRY}/base:${VERSION}"
app:
file: images/Dockerfile.app
depends_on: [base]
tags:
- "${REGISTRY}/app:${VERSION}"
push:
after_all: trueFields§
§version: Option<String>Pipeline format version (currently “1”)
vars: HashMap<String, String>Global variables for template substitution.
Referenced in tags and other string fields as ${VAR_NAME}.
defaults: PipelineDefaultsDefault settings inherited by all images. Individual image settings override these defaults.
images: IndexMap<String, PipelineImage>Named images to build. Order is preserved (IndexMap).
Keys are image names used for depends_on references.
cache: Option<PipelineCacheConfig>Cache configuration for storing built image layers. Enables pipeline-built images to be used as bases by downstream images.
push: PushConfigPush configuration.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ZPipeline
impl<'de> Deserialize<'de> for ZPipeline
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ZPipeline
impl RefUnwindSafe for ZPipeline
impl Send for ZPipeline
impl Sync for ZPipeline
impl Unpin for ZPipeline
impl UnsafeUnpin for ZPipeline
impl UnwindSafe for ZPipeline
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more