What this book covers
Chapter 1, A Brief History of CI/CD, takes you a step back in time and explains where CI/CD comes from and why it is so important nowadays. This will help you understand the importance of building robust pipelines for quicker delivery of your application.
Chapter 2, A Cloud-Native Approach to CI/CD, explains that Tekton is different from other CI/CD solutions because of its cloud-native approach. In this chapter, you will learn what cloud-native development is and what it means in the context of CI/CD pipelines.
Chapter 3, Installation and Getting Started, explains how to prepare your environment for the exercises that will be presented in the book.
Chapter 4, Stepping into Tasks, explains that tasks are the basic building block of Tekton pipelines. They are at the heart of the Tekton philosophy. In this chapter, you will learn how to build and use tasks that are reusable.
Chapter 5, Jumping into Pipelines, explains that a Tekton pipeline is composed of multiple tasks. In this chapter, you will learn how to use the tasks you learned about in the previous chapter to build pipelines.
Chapter 6, Debugging and Cleaning Up Pipelines and Tasks, demonstrates that when authoring tasks, things don’t always work as expected. This chapter introduces concepts to help find issues with Tekton pipelines and tasks. It also introduces a new concept called finally
, which helps to clean up after a pipeline has been executed.
Chapter 7, Sharing Data with Workspaces, explains that in order to share data across the various tasks in a pipeline, there was originally a concept of pipeline resources. In the latest iteration of Tekton, workspaces are now the recommended way to do this.
Chapter 8, Adding when Expressions, explains that in order to add conditional statements in the execution of a pipeline, when
expressions can be used. These expressions control the flow of the pipeline based on conditions.
Chapter 9, Securing Authentication, demonstrates that for certain operations, it is necessary to authenticate into a service. This can be done without exposing credentials by using secrets.
Chapter 10, Getting Started with Triggers, covers Tekton Triggers, a sister project of Tekton Pipelines that adds the ability to automatically trigger a pipeline by opening a route on your Kubernetes cluster and listening for incoming requests. In this chapter, you will learn about the new objects that are introduced by Tekton Triggers and how to install and prepare a local minikube cluster to listen for incoming requests.
Chapter 11, Triggering Tekton, explains how to create the required objects for the cluster to listen for a GitHub webhook and trigger a pipeline on certain actions.
Chapter 12, Preparing for a New Pipeline, prepares you to deploy a full real-world example of a Tekton pipeline. You will start by cleaning up the cluster and install all the required components on a fresh new installation of minikube. You will then be invited to explore the application that is about to be deployed. This will be a Node.js Express server with a few basic routes. Finally, you will be guided through the process of manually deploying and updating the application into the local cluster.
Chapter 13, Building a Deployment Pipeline, shows you how to build the tasks that are required for the pipeline and link them together. You will also need to create conditions, secrets, and workspaces to fully deploy the application.