ObanPowertools.Workflow (oban_powertools v0.5.0)

Copy Markdown View Source

Explicit builder and insert API for durable workflow DAG definitions.

Summary

Types

t()

@type t() :: %ObanPowertools.Workflow{
  definition_version: pos_integer(),
  edges: [map()],
  name: String.t() | nil,
  steps: [map()],
  workflow_context: map()
}

Functions

add(workflow, step_name, job_definition, opts \\ [])

add_many(workflow, additions, opts \\ [])

await_step(repo, workflow_id, step_name, attrs \\ [])

callback_contract()

complete_step(repo, workflow_id, step_name, attrs \\ [])

connect(workflow, from_step, to_step, opts \\ [])

deliver_signal(repo, attrs)

dispatch_callbacks(repo, opts \\ [])

insert(workflow, repo)

new(opts)

recover_step(repo, workflow_id, step_name, action, attrs \\ [])

request_cancel(repo, workflow_id, attrs \\ [])

result(step_name)