ops0ops0

Create Workflow

Build automated workflows using the visual DAG (Directed Acyclic Graph) builder.

Workflow Editor

Left Panel
Step palette - drag steps onto canvas
Canvas
Visual DAG builder - arrange and connect steps
Right Panel
Step configuration - settings for selected step
Header
Name, Save, Run, Settings buttons

Building a Workflow

Adding Steps

1Drag & Drop - Drag a step from the left panel onto the canvas
2Connect - Click output port (right) and drag to input port (left) of next step
3Configure - Click a step to open its settings in the right panel
4Save - Click Save (draft) or Save & Activate (enabled)

Step Palette

CategorySteps
InfrastructureIaC Deploy, Configuration Deploy
ActionsScript, HTTP Request
Flow ControlApproval, Wait, Condition, Loop
NotificationsEmail, Slack, Webhook

Workflow Settings

SettingDescription
TimeoutMax execution time for entire workflow
ConcurrencyAllow multiple runs simultaneously
Failure ActionStop all, continue, or retry failed steps
NotificationsEmail/Slack on success or failure

Variables

Reference variables in step configurations using ${...} syntax.

VariableDescription
${workflow.name}Workflow name
${workflow.run_id}Current execution ID
${trigger.type}How workflow was triggered
${trigger.branch}Git branch (if git trigger)
${steps.step_name.output}Output from a previous step
${env.VARIABLE}Environment variable

Parallel Steps

Connect one step to multiple next steps to run them in parallel.

              ┌─────────┐
        ┌────▶│ Step B  │────┐
┌───────┤     └─────────┘    │     ┌─────────┐
│ Step A│                    ├────▶│ Step D  │
└───────┤     ┌─────────┐    │     └─────────┘
        └────▶│ Step C  │────┘
              └─────────┘
  • Steps B and C run simultaneously
  • Step D waits for both to complete

Validation

The editor validates your workflow before saving:

ErrorDescription
Disconnected stepStep has no connections
Cycle detectedCircular dependency found
Missing configRequired field is empty
Invalid referenceVariable doesn't exist

Example: Creating a Deploy Pipeline

Step 1: Create Workflow

Click: Workflows → + Create Workflow
Name:  api-deploy-pipeline

Step 2: Add Steps

Drag these steps onto the canvas and connect them:

OrderStep TypeName
1IaC DeployPlan Infrastructure
2ApprovalProduction Approval
3IaC DeployApply Infrastructure
4HTTP RequestHealth Check
5SlackNotify Team

Step 3: Configure Each Step

Plan Infrastructure:

Project:  api-infrastructure
Action:   Plan

Production Approval:

Approvers:     team:platform-team
Message:       Please review the Terraform plan
Timeout:       2 hours

Apply Infrastructure:

Project:  api-infrastructure
Action:   Apply

Health Check:

URL:           https://api.example.com/health
Method:        GET
Success Codes: 200
Retry:         3 times

Notify Team:

Channel:  #deployments
Message:  ✅ API deployment complete
          Changes: ${steps.apply.output.summary}

Step 4: Configure Trigger

Settings → Triggers → Git Push
Repository:    acme/api-infrastructure
Branch:        main
Path Filter:   terraform/**

Step 5: Save & Activate

Click: Save & Activate
Status: Active ✓

Result

Workflow: api-deploy-pipeline
─────────────────────────────────────
Status:     Active
Trigger:    Git Push (main)
Steps:      5
Created:    Just now