A pipeline definition specifies a repeatable automation flow as ordered tasks that produce expected outputs. Tasks may run tests, move code, deploy software, provision infrastructure, or create users. section 3.1
A pipeline definition determines:
- Which tasks or scripts execute and in what sequence. section 3.1
- Which data one task can share with the following task. section 3.1
- Which outputs should be checked after execution. section 3.1
A pipeline engine reads the definition and creates pipeline instances. Each instance can use different parameters, run independently, and finish successfully, fail when a task errors, or remain active while tasks continue. section 3.1
Figure 3.2 A pipeline definition can be instantiated by a pipeline engine multiple times, and it describes what needs to be done. The pipeline engine creates pipeline Instances, which run the tasks included in the pipeline definition. These pipeline instances can fail or run for longer periods of time depending on the tasks that they are performing. As a user, you can always ask the pipeline engine the status of a particular pipeline instance and its tasks.
Shows how one definition produces multiple parameterized instances and how users inspect instance and task status. section 3.1
