pub struct WorkflowStepConfig {
pub workflow_name: String,
pub payload: Value,
pub retry: Option<RetryPolicy>,
}Expand description
Configuration for invoking a registered workflow as a sub-step.
The engine will look up the handler by workflow_name
and execute it as a child run with its own steps and lifecycle.
§Examples
use ironflow_engine::config::WorkflowStepConfig;
use serde_json::json;
let config = WorkflowStepConfig::new("build", json!({"branch": "main"}));
assert_eq!(config.workflow_name, "build");Fields§
§workflow_name: StringName of the registered workflow handler to invoke.
payload: ValuePayload to pass to the child workflow run.
retry: Option<RetryPolicy>Optional step-level retry policy.
Implementations§
Source§impl WorkflowStepConfig
impl WorkflowStepConfig
Sourcepub fn new(workflow_name: &str, payload: Value) -> Self
pub fn new(workflow_name: &str, payload: Value) -> Self
Create a new workflow step config.
§Examples
use ironflow_engine::config::WorkflowStepConfig;
use serde_json::json;
let config = WorkflowStepConfig::new("deploy", json!({}));
assert_eq!(config.workflow_name, "deploy");Sourcepub fn retry_policy(self, policy: RetryPolicy) -> Self
pub fn retry_policy(self, policy: RetryPolicy) -> Self
Set a step-level retry policy.
§Examples
use ironflow_core::retry::RetryPolicy;
use ironflow_engine::config::WorkflowStepConfig;
use serde_json::json;
let config = WorkflowStepConfig::new("build", json!({}))
.retry_policy(RetryPolicy::new(3));
assert!(config.retry.is_some());Trait Implementations§
Source§impl Clone for WorkflowStepConfig
impl Clone for WorkflowStepConfig
Source§fn clone(&self) -> WorkflowStepConfig
fn clone(&self) -> WorkflowStepConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WorkflowStepConfig
impl Debug for WorkflowStepConfig
Source§impl<'de> Deserialize<'de> for WorkflowStepConfig
impl<'de> Deserialize<'de> for WorkflowStepConfig
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 WorkflowStepConfig
impl RefUnwindSafe for WorkflowStepConfig
impl Send for WorkflowStepConfig
impl Sync for WorkflowStepConfig
impl Unpin for WorkflowStepConfig
impl UnsafeUnpin for WorkflowStepConfig
impl UnwindSafe for WorkflowStepConfig
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