Getting Started with Pipelines
This tutorial shows you how to:
- Create two Tasks.
- Create a Pipeline containing your Tasks.
- Use
PipelineRun
to instantiate and run the Pipeline containing your Tasks.
For this tutorial we are going to use minikube to run the commands locally.
Prerequisites
-
Complete the Getting started with Tasks tutorial. Do not clean up your resources, skip the last section.
Create and run a second Task
You already have a Hello World! Task. To create a second Goodbye World! Task:
-
Create a new file named
goodbye-world.yaml
and add the following content:apiVersion: tekton.dev/v1beta1 kind: Task metadata: name: goodbye spec: steps: - name: goodbye image: ubuntu script: | #!/bin/bash echo "Goodbye World!"
-
Apply your Task file:
kubectl apply --filename goodbye-world.yaml
When a Task is part of a Pipeline you don’t have to instantiate it, the Pipeline is going to take care of that.
Create and run a Pipeline
A Pipeline defines an ordered series of Tasks arranged in a specific execution order as part of your CI/CD workflow.
In this section you are going to create your first Pipeline, that will include both the Hello World! and Goodbye World! Tasks.
-
Create a new file named
hello-goodbye-pipeline.yaml
and add the following content:apiVersion: tekton.dev/v1beta1 kind: Pipeline metadata: name: hello-goodbye spec: tasks: - name: hello taskRef: name: hello - name: goodbye runAfter: - hello taskRef: name: goodbye
-
Apply your Pipeline configuration to your cluster:
kubectl apply --filename hello-goodbye-pipeline.yaml
-
Instantiate your Pipeline with a
PipelineRun
object. Create a new file namedhello-goodbye-pipeline-run.yaml
with the following content:apiVersion: tekton.dev/v1beta1 kind: PipelineRun metadata: name: hello-goodbye-run spec: pipelineRef: name: hello-goodbye
-
Start your Pipeline by applying the
PipelineRun
configuration to your cluster:kubectl apply --filename hello-goodbye-pipeline-run.yaml
You see the following output:
pipelinerun.tekton.dev/hello-goodbye-run created
Tekton now starts running your Pipeline.
-
To see the logs of the
PipelineRun
, use the following command:tkn pipelinerun logs hello-goodbye-run -f -n default
The output shows both Tasks completed successfully:
[hello : hello] Hello World! [goodbye : goodbye] Goodbye World!
Cleanup
To delete the cluster that you created for this quickstart run:
minikube delete
The output confirms that your cluster was deleted:
🔥 Deleting "minikube" in docker ... 🔥 Deleting container "minikube" ... 🔥 Removing /home/user/.minikube/machines/minikube ... 💀 Removed all traces of the "minikube" cluster.
Further reading
Other useful resources
Feedback
Was this page helpful?
Thanks! Tell us how we can further improve.
Sorry about that. Tell us how we can further improve.