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.
Additional resources
-
For more information on defining and creating the CRDs, see the Tekton documentation.