Book Image

Repeatability, Reliability, and Scalability through GitOps

By : Bryan Feuling
Book Image

Repeatability, Reliability, and Scalability through GitOps

By: Bryan Feuling

Overview of this book

The world of software delivery and deployment has come a long way in the last few decades. From waterfall methods to Agile practices, every company that develops its own software has to overcome various challenges in delivery and deployment to meet customer and market demands. This book will guide you through common industry practices for software delivery and deployment. Throughout the book, you'll follow the journey of a DevOps team that matures their software release process from quarterly deployments to continuous delivery using GitOps. With the help of hands-on tutorials, projects, and self-assessment questions, you'll build your knowledge of GitOps basics, different types of GitOps practices, and how to decide which GitOps practice is the best for your company. As you progress, you'll cover everything from building declarative language files to the pitfalls in performing continuous deployment with GitOps. By the end of this book, you'll be well-versed with the fundamentals of delivery and deployment, the different schools of GitOps, and how to best leverage GitOps in your teams.
Table of Contents (17 chapters)
1
Section 1: Fundamentals of GitOps
5
Section 2: GitOps Types, Benefits, and Drawbacks
10
Section 3: Hands-On Practical GitOps

The automation test

As the 2-week deadline was quickly approaching, the selected tools were being installed and configured to accomplish the needs of the initial design. The DevOps teams set the deployment pipeline to when a GitHub repository was updated. They also had to create each Jenkins build and link them together to create the desired build pipeline. The Jenkins pipeline would create and upload a Docker image with a "latest" tag to make the integration process move faster.

Although the building and uploading of the Docker image to the container registry was a relatively easy task for the team to script out, they had to figure out how to deploy the container to Kubernetes. Executing the Kubernetes command with a manifest was not too difficult to run from Jenkins, but the issue was generating the YAML manifest. The team decided that the fastest solution was to leverage a copy of a public Helm Chart. They would customize it to meet their needs and give the developers...