pub struct WorkflowRun {
pub id: String,
pub workflow: String,
pub status: WorkflowStatus,
pub steps: BTreeMap<String, StepRun>,
pub completed_order: Vec<String>,
pub input_b64: Option<String>,
pub created: u64,
pub updated: u64,
}Expand description
A durable workflow run — the unit the executor advances.
Fields§
§id: StringOpaque run id.
workflow: StringThe workflow this runs.
status: WorkflowStatusOverall status.
steps: BTreeMap<String, StepRun>Per-step run state, by step id.
completed_order: Vec<String>The order steps succeeded in (for reverse-order compensation).
input_b64: Option<String>The run’s initial input, base64 (delivered to root steps).
created: u64Unix create time.
updated: u64Unix last-update time.
Implementations§
Source§impl WorkflowRun
impl WorkflowRun
Sourcepub fn start(
workflow: &Workflow,
id: impl Into<String>,
input_b64: Option<String>,
now: u64,
) -> WorkflowRun
pub fn start( workflow: &Workflow, id: impl Into<String>, input_b64: Option<String>, now: u64, ) -> WorkflowRun
A fresh run of workflow: every step pending.
Sourcepub fn is_terminal(&self) -> bool
pub fn is_terminal(&self) -> bool
Whether the run reached a terminal state.
Sourcepub fn ready_steps(&self, workflow: &Workflow) -> Vec<String>
pub fn ready_steps(&self, workflow: &Workflow) -> Vec<String>
Step ids that are pending and whose every dependency has succeeded —
the steps a drain tick may run now (fan-out yields several at once; a
fan-in step appears only once all its deps are done).
Sourcepub fn all_succeeded(&self) -> bool
pub fn all_succeeded(&self) -> bool
Whether every step has succeeded (⇒ the run succeeds).
Trait Implementations§
Source§impl Clone for WorkflowRun
impl Clone for WorkflowRun
Source§fn clone(&self) -> WorkflowRun
fn clone(&self) -> WorkflowRun
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 WorkflowRun
impl Debug for WorkflowRun
Source§impl<'de> Deserialize<'de> for WorkflowRun
impl<'de> Deserialize<'de> for WorkflowRun
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<WorkflowRun, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<WorkflowRun, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for WorkflowRun
Source§impl PartialEq for WorkflowRun
impl PartialEq for WorkflowRun
Source§impl Serialize for WorkflowRun
impl Serialize for WorkflowRun
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for WorkflowRun
Auto Trait Implementations§
impl Freeze for WorkflowRun
impl RefUnwindSafe for WorkflowRun
impl Send for WorkflowRun
impl Sync for WorkflowRun
impl Unpin for WorkflowRun
impl UnsafeUnpin for WorkflowRun
impl UnwindSafe for WorkflowRun
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.