pub struct WorkflowDefinition {
pub id: String,
pub name: Option<String>,
pub version: u32,
pub description: Option<String>,
pub steps: Vec<WorkflowStep>,
pub default_error_behavior: ErrorBehavior,
pub default_error_retry_interval: Option<Duration>,
pub services: Vec<ServiceDefinition>,
pub shared_volume: Option<SharedVolume>,
}Expand description
A compiled workflow definition ready for execution.
Fields§
§id: StringStable slug used as the primary key (e.g. “ci”, “checkout”). Must be unique within a host. Referenced by other workflows, webhooks, and clients when starting new instances.
name: Option<String>Optional human-friendly display name surfaced in UIs, listings, and
logs (e.g. “Continuous Integration”). Falls back to id when unset.
version: u32Version.
description: Option<String>Description.
steps: Vec<WorkflowStep>Steps.
default_error_behavior: ErrorBehaviorDefault error behavior.
default_error_retry_interval: Option<Duration>Default error retry interval.
services: Vec<ServiceDefinition>Infrastructure services required by this workflow (databases, caches, etc.).
When set, the backend provisions a single persistent volume for the top-level workflow instance and mounts it on every step container. All sub-workflows inherit the same volume through their shared namespace/isolation domain. Sub-workflow declarations are ignored.
Implementations§
Trait Implementations§
Source§impl Clone for WorkflowDefinition
impl Clone for WorkflowDefinition
Source§fn clone(&self) -> WorkflowDefinition
fn clone(&self) -> WorkflowDefinition
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more