Tekton

Component

  • Pipeline: Pipeline defines a set of Kubernetes Custom Resources that act as building blocks you use to assemble your CI/CD pipelines.
  • Triggers: Triggers is a Kubernetes Custom Resource that allows you to create pipelines based on information extracted from event payloads. For example, you can trigger the instantiation and execution of a pipeline every time a merge request gets opened against a Git repository.
  • CLI: CLI provides a command-line interface called tkn that allows you to interact with Tekton from your terminal.
  • Dashboard: Dashboard is a web-based graphical interface for Tekton pipelines that displays information about the execution of your pipelines.
  • Catalog: Catalog is a repository of high-quality, community-contributed Tekton building blocks (tasks, pipelines, and so on) ready for use in your own pipelines.
  • Hub: Hub is a web-based graphical interface for accessing the Tekton catalog.
  • Operator: Operator is a Kubernetes Operator pattern that allows you to install, update, upgrade, and remove Tekton projects on a Kubernetes cluster.
  • Chains: Chains is a Kubernetes Custom Resource Definition (CRD) controller that allows you to manage your supply chain security in Tekton. It is currently a work-in-progress.
  • Results: Results aims to help users logically group CI/CD workload history and separate out long-term result storage away from the pipeline controller.

Term

  • Step: A step is the most basic entity in a CI/CD workflow, such as running some unit tests for a Python web app or compiling a Java program. Tekton performs each step with a provided container image.

  • Task: A task is a collection of steps in a specific order. Tekton runs a task in the form of a Kubernetes pod, where each step becomes a running container in the pod.

  • Pipelines: A pipeline is a collection of tasks in a specific order. Tekton collects all tasks, connects them in a directed acyclic graph (DAG), and executes the graph in sequence. In other words, it creates a number of Kubernetes pods and ensures that each pod completes running successfully as desired.

    Tekton pipelines

  • PipelineRun: A PipelineRun, as its name implies, is a specific execution of a pipeline.

  • TaskRun: A TaskRun is a specific execution of a task. TaskRuns are also available when you choose to run a task outside a pipeline, with which you may view the specifics of each step execution in a task.

Resources

Comparison