<p><b>Automate the delivery of applications using Tekton Pipelines and Triggers to deploy new releases quickly and more efficiently</b></p><h4>Key Features</h4><ul><li>Learn how to create powerful pipelines using CI/CD tools</li><li>Understand how to run, deploy and test applications directly in a c
Building CI/CD Systems Using Tekton: Develop flexible and powerful CI/CD pipelines using Tekton Pipelines and Triggers
โ Scribed by Joel Lord
- Publisher
- Packt Publishing
- Year
- 2021
- Tongue
- English
- Leaves
- 278
- Category
- Library
No coin nor oath required. For personal study only.
โฆ Synopsis
Automate the delivery of applications using Tekton Pipelines and Triggers to deploy new releases quickly and more efficiently
Key Features
- Learn how to create powerful pipelines using CI/CD tools
- Understand how to run, deploy and test applications directly in a cloud-native environment
- Explore the new Tekton Pipelines 2021 features
Book Description
Tekton is a powerful yet flexible Kubernetes-native open source framework for creating continuous integration and continuous delivery (CI/CD) systems. It enables you to build, test, and deploy across multiple cloud providers or on-premise systems.
Building CI/CD Systems Using Tekton covers everything you need to know to start building your pipeline and automating application delivery in a cloud-native environment. Using a hands-on approach, you will learn about the basic building blocks, such as tasks, pipelines, and workspaces, which you can use to compose your CI/CD pipelines. As you progress, you will understand how to use these Tekton objects in conjunction with Tekton Triggers to automate the delivery of your application in a Kubernetes cluster.
By the end of this book, you will have learned how to compose Tekton Pipelines and use them with Tekton Triggers to build powerful CI/CD systems.
What you will learn
- Understand the basic principles behind CI/CD
- Explore what tasks are and how they can be made reusable and flexible
- Focus on how to use Tekton objects to compose a robust pipeline
- Share data across a pipeline using volumes and workspaces
- Discover more advanced topics such as WhenExpressions and Secrets to build complex pipelines
- Understand what Tekton Triggers are and how they can be used to automate CI/CD pipelines
- Build a full CI/CD pipeline that automatically deploys an application to a Kubernetes cluster when an update is done to a code repository
Who this book is for
This continuous integration and continuous delivery book is for anyone who wants to learn about one of the most powerful Kubernetes-native CI/CD systems - Tekton. Software developers who want to leverage the Custom Resource Definitions (CRDs) in Kubernetes and use Tekton to run pipeline tasks in order to build and own application delivery pipelines will also find this book particularly helpful. Beginner-level knowledge of software development concepts and Kubernetes is required to get the most out of this book.
Table of Contents
- A Brief History of CI/CD
- A Cloud-Native Approach to CI/CD
- Installation and Getting Started
- Stepping into Tasks
- Jumping into Pipelines
- Debugging and Cleaning Up Pipelines and Tasks
- Sharing Data with Workspaces
- Adding when Expressions
- Securing Authentication
- Getting Started with Triggers
- Triggering Tekton
- Preparing for a New Pipeline
- Building a Deployment Pipeline
โฆ Table of Contents
Cover
Title Page
Copyright and Credits
Dedication
Contributors
Table of Contents
Preface
Section 1: Introduction to CI/CD
Chapter 1: A Brief History of CI/CD
The early days
Waterfall model
Understanding the impacts of Agile development practices
Here be testing
Deploying in the era of the cloud
Works on my machine!
The cloud today โ cloud native
The future of the cloud
Demystifying continuous integration versus continuous delivery versus continuous deployment
Continuous integration
Continuous delivery
Continuous deployment
CI/CD in the real world
Summary
Chapter 2: A Cloud-Native Approach to CI/CD
Being a software developer in the age of cloud-native development
Understanding cloud-native CI/CD
Containers
Serverless
DevOps
Introducing Tekton
Tekton CLI
Tekton Triggers
Tekton Catalog
Tekton Dashboard
Exploring Tekton's building blocks
Steps, tasks, and pipelines
Where to use a step, a task, or a pipeline
Workspaces
Understanding TaskRuns and PipelineRuns
TaskRuns
PipelineRuns
Summary
Section 2: Tekton Building Blocks
Chapter 3: Installation and Getting Started
Technical requirements
Setting up a developer environment
Git
Node.js
VS Code
Installing a container runtime and setting up a registry
Docker
Docker Hub
Picking a Kubernetes distribution (local, cloud, hosted)
minikube
Connecting to your Kubernetes cluster
Preparing the Tekton tooling
Tekton Dashboard
Summary
Chapter 4: Stepping into Tasks
Technical requirements
Introducing tasks
Understanding Steps
Building your first task
Adding additional Steps
Using scripts
Adding task parameters
Making the Hello task more reusable
Using array type parameters
Adding a default value
Sharing data
Accessing the home directory
Using results
Using Kubernetes volumes
Using workspaces
Visualizing tasks
The VS Code Tekton Pipelines extension
Tekton Dashboard
Digging into TaskRuns
Getting your hands dirty
More than Hello World
Build a generic curl task
Create a random user
Summary
Chapter 5: Jumping into Pipelines
Technical requirements
Introducing pipelines
Building your first pipeline
Parameterizing pipelines
Reusing tasks in the context of a pipeline
Ordering tasks within pipelines
Using task results in pipelines
Introducing pipeline runs
Getting your hands dirty
Back to the basics
Counting files in a repo
Weather services
Summary
Chapter 6: Debugging and Cleaning Up Pipelines and Tasks
Technical requirements
Debugging pipelines
Running a halting task
Adding a finally task
Getting your hands dirty
Fail if root
Make your bets
Summary
Chapter 7: Sharing Data with Workspaces
Technical requirements
Introducing workspaces
Types of volume sources
emptyDir
ConfigMap
Secret
Persistent volume claims and volume claim templates
Using your first workspace
Using workspaces with task runs
Adding a workspace to a pipeline
Persisting data within a pipeline
Cleaning up with finally
Using workspaces in pipeline runs
Using volume claim templates
Getting your hands dirty
Write and read
Pick a card
Hello admin
Summary
Chapter 8: Adding when Expressions
Technical requirements
Introducing when expressions
Using when expressions with parameters
Using the notin operator
Using when expressions with results
Getting your hands dirty
Hello Admin
Critical Hit
Not working on weekends
Summary
Chapter 9: Securing Authentication
Technical requirements
Introducing authentication in Tekton
Authenticating into a Git repository
Basic authentication
SSH authentication
Authenticating in a container registry
Summary
Section 3: Tekton Triggers
Chapter 10: Getting Started with Triggers
Technical requirements
Introducing Tekton Triggers
Installing Tekton Triggers
Configuring your cluster
Using a local cluster
Cloud-based clusters
Defining new objects
Trigger templates
Trigger bindings
Event listeners
Summary
Chapter 11: Triggering Tekton
Technical requirements
Creating a pipeline to be triggered
Creating the trigger
TriggerBinding
TriggerTemplate
EventListener
Configuring the incoming webhooks
Creating a secret
Exposing a route
Making the route publicly available
Configuring your GitHub repository
Triggering the pipeline
Summary
Section 4: Putting It All Together
Chapter 12: Preparing for a New Pipeline
Technical requirements
Cleaning up your cluster
Installing the necessary tooling
Exploring the source code
Creating the container
Deploying the application
Updating the application manually
Summary
Chapter 13: Building a Deployment Pipeline
Technical requirements
Identifying the components
Using the task catalog
Adding an additional task
Creating the pipeline
Creating the trigger
Summary
Assessments
About PACKT
Other Books You May Enjoy
Index
๐ SIMILAR VOLUMES
<p><span>Use GitLab CI/CD pipelines for automating and deploying different steps of your software development lifecycle using best practices and troubleshooting methods.</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Reap the power of GitLab CI/CD pipelines at every stage of your so
<p><span>Use GitLab CI/CD pipelines for automating and deploying different steps of your software development lifecycle using best practices and troubleshooting methods.</span></p><h4><span>Key Features</span></h4><ul><li><span><span>Reap the power of GitLab CI/CD pipelines at every stage of your so
A Practical Guide to Mastering Modern-day Software Development KEY FEATURES โ Leverage the power of Docker for faster deployment and migrations. โ Learn how to create a Continuous Integration pipeline in Jenkins. โ Get familiar with different types of deployments in Continuous Delivery. DESCRIPTION
Understand continuous integration (CI), continuous delivery, and continuous deployment (CD) with Jenkins. These processes allow users as well as administrators to catch problems as soon as they get injected into software systems. This book starts with an introduction to Jenkins and covers its archi