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

Continuous delivery considerations

As the DevOps team deliberated over what deployment best practices would be like for their company, they realized that they would also need best practices for before and after the deployment was done. Every developer that had releasable code would need to pass their artifacts through a set of testing sequences. But before they could submit the artifact for a deployment, they would have to work through a set of change management practices to ensure that sufficient approvals and documentation were submitted. Because of the company's compliance standards, the artifact would not be able to be deployed to production by the same person who submitted the code. This requirement created at least a two-person release process. Additionally, audit-related requirements meant that significant access controls needed to be in place, and changes that had been made to any service needed to be documented. Every release would also require a set of documented and...