Pipelines concepts

OpenShift Pipelines provide the following set of standard CRDs that act as the building blocks from which you can assemble a CI/CD pipeline for your application:

Task

A Task is the smallest configurable unit in a Pipeline. It is essentially a function of inputs and outputs that form the Pipeline build. It can run individually or as a part of a Pipeline. A Pipeline includes one or more Tasks, where each Task consists of one or more steps. Steps are a series of commands that are sequentially executed by the Task.

Pipeline

A Pipeline consists of a series of Tasks that are executed to construct complex workflows that automate the build, deployment, and delivery of applications. It is a collection of PipelineResources, Parameters, and one or more Tasks. A Pipeline interacts with the outside world by using PipelineResources, which are added to Tasks as inputs and outputs.

PipelineRun

A PipelineRun is the running instance of a Pipeline. PipelineRun initiates a Pipeline and manages the creation of a TaskRun for each Task being executed in the Pipeline.

TaskRun

A TaskRun is auto-created by a PipelineRun for each Task in a Pipeline. It is a result of running an instance of a Task in a Pipeline. It can also be manually created if a Task runs outside of a Pipeline.

PipelineResource

A PipelineResource is an object that is used as an input and output for pipeline Tasks. For example, if an input is a Git repository and an output is a container image built from that Git repository, these are both classified as PipelineResources. PipelineResources currently support Git resources, Image resources, Cluster resources, Storage Resources and Cloud Event resources.

tekton architecture

Additional resources