Difficulty: Introduction
Estimated Time: 20 minutes

Tekton on Kubernetes

The Tekton Pipelines project provides Kubernetes-style resources for declaring CI / CD style pipelines.

Tekton is an open-source project that formed as a subproject of the Knative project in March of 2019. Using established Kubernetes style declarations whole pipelines can be declared. The pipelines run on Kubernetes like any other process. Each step runs as an independent container. Tekton also helps normalize and standardize the terms and methods for forming and running pipelines. Tekton pipelines can complement a variety of popular CI/CD engines. For more information also see the Continuous Delivery Foundation (CDF).

This scenario demonstrates the building, deploying and running a Node.js application using Tekton on Kubernetes.

Tekton Pipelines is a Kubernetes extension that installs and runs on your Kubernetes cluster. It defines a set of Kubernetes Custom Resources that act as building blocks from which you can assemble CI/CD pipelines. Once installed, Tekton Pipelines becomes available via the Kubernetes CLI (kubectl) and via API calls, just like pods and other resources. Tekton is open-source and part of the CD Foundation, a Linux Foundation project. -- Tekton Project

Tekton Pipelines are (detailed here):

  • Cloud Native
  • Decoupled
  • Typed

You will learn:

  • how to install a private registry with a UI
  • how to install the Tekton controller and optional CLI tool
  • how to declare resources specific to defining a CI/CD pipeline
  • about various Tekton resources like Resources, Tasks, and Pipelines
  • how to kick off a pipeline and inspect its progress

Conclusion

While there are numerous, complimenting and competing ways to implement your CI/CD flows, you may be overwhelmed with decision fatigue while trying to invest in the best choice. Consider Tekton is helping to standardize the language and architecture of pipelines that leverage the existing benefits of Kubernetes.

This tutorial shows how you can easily use Kubernetes as the underlying platform for running Tekton based Pipelines. CI/CD is a great place for your team to start understanding how to leverage the distributed and high availability nature of Kubernetes.

Lessons Learned

With these steps you have learned:

  • ✔ how to install a private registry with a UI
  • ✔ how to install the Tekton controller and optional CLI tool
  • ✔ how to declare resources specific to defining a CI/CD pipeline
  • ✔ about various Tekton resources like Resources, Tasks, and Pipelines
  • ✔ how to kick off a pipeline and inspect its progress

Additional Information


For a deeper understanding of these topics and more join
Jonathan Johnson
at various conferences, symposiums, workshops and meetups.

Software Architectures ★ Speaker ★ Workshop Hosting ★ Kubernetes & Java Specialist

Tekton Pipelines

Step 1 of 11

Your Kubernetes Cluster

For this scenario, Katacoda has just started a fresh Kubernetes cluster for you. Verify it's ready for your use.

kubectl version --short && \ kubectl get componentstatus && \ kubectl get nodes && \ kubectl cluster-info

The Helm package manager used for installing applications on Kubernetes is also available.

helm version --short

Kubernetes Dashboard

You can administer your cluster with the kubectl CLI tool or use the visual Kubernetes Dashboard. Use this script to access the protected Dashboard.

token.sh

Terminal
Kubernetes Dashboard
Registry
Application