DataZen Documentation
DataZen User Guide

Headless Pipelines

A headless pipeline is similar to a regular reader pipeline, but it does not contain SELECT, CAPTURE, LOAD, or PUSH operations. As a result, headless pipelines do not create or read change logs.

Use them to monitor environments and orchestrate other pipelines as needed—for example by calling one or more START operations, optionally with DECLARE parameters, IF branches, and WAITFOR delays. The script is typically entirely control flow and orchestration, with no source read or change-log path.

Example: Conditional Orchestration

The script below starts other pipelines based on parameter values. Each enabled epic block sets an epic name, starts Create Epic / Features / Stories pipelines with matching PARAMS, then waits briefly before continuing.

DECLARE @project = 'Test';
DECLARE @epic = '';

DECLARE @kickoff = 1;
DECLARE @apa = 1;

IF (@kickoff=1)
BEGIN
  SET @epic = 'Project Kickoff and Configuration Epic';
  PRINT 'Creating @epic';
  START 'DEVOPS - Create Epic' PARAMS 'project=@project&epic=@epic';
  START 'DEVOPS - Create Features' PARAMS 'project=@project&epic=@epic';
  START 'DEVOPS - Create Stories' PARAMS 'project=@project&epic=@epic';
  WAITFOR DELAY 3;
END; 

IF (@apa=1)
BEGIN
  SET @epic = 'AP Automation Epic';
  PRINT 'Creating @epic';
  START 'DEVOPS - Create Epic' PARAMS 'project=@project&epic=@epic';
  START 'DEVOPS - Create Features' PARAMS 'project=@project&epic=@epic';
  START 'DEVOPS - Create Stories' PARAMS 'project=@project&epic=@epic';
  WAITFOR DELAY 3;
END; 

PRINT 'Headless pipeline completed';

In this example, @kickoff and @apa act as feature flags. Set either value to 0 (or omit enabling that block) to skip the corresponding epic creation sequence. Override defaults at run time when the pipeline is started with PARAMS, or when it is itself started from another pipeline.

Related Topics