Tekton Pipelines

Warning

This site is still under development.

Tekton Pipelines is a Kubernetes-native open-source CI/CD framework for creating continuous integration and delivery (CI/CD) systems. It enables you to build, test, and deploy across multiple cloud providers or on-premises systems by abstracting away the underlying implementation details.

Pre-requirements

Install Tekton

As described in the Tekton documentation you can install Tekton using the following command:

kubectl apply --filename https://storage.googleapis.com/tekton-releases/pipeline/latest/release.yaml

Some seconds later, you should see the following output:

kubectl get pods --namespace tekton-pipelines
NAME                                           READY   STATUS    RESTARTS   AGE
tekton-pipelines-controller-5c7cbfdcf4-x7c8b   1/1     Running   0          43s
tekton-events-controller-98bc88779-pxkk5       1/1     Running   0          43s
tekton-pipelines-webhook-5489bd5f4-n9hjg       1/1     Running   0          43s

Run a Task

A Task is a collection of steps that perform a specific task. For example, you can create a Task that builds a Docker image, or a Task that deploys an application to a Kubernetes cluster.

Let’s create a demo Task:

kubectl create -f https://raw.githubusercontent.com/tektoncd/pipeline/main/examples/v1beta1/taskruns/image-params.yaml 

Or we can create a Pipeline:

create -f https://raw.githubusercontent.com/tektoncd/pipeline/main/examples/v1beta1/pipelineruns/clustertask-pipelinerun.yaml

Some seconds later, you should see the following output:

kubectl get taskruns
NAME                                          SUCCEEDED   REASON      STARTTIME   COMPLETIONTIME
image-params-vn4pb                            True        Succeeded   112s        97s
demo-pipeline-run-4-cluster-task-pipeline-4   True        Succeeded   42s         34s
kubectl get pipelineruns
NAME                  SUCCEEDED   REASON      STARTTIME   COMPLETIONTIME
demo-pipeline-run-4   True        Succeeded   52s         44s

Check out the Tekton documentation for more information.