GitOps is an operational framework that takes DevOps best practices used for application development such as version control, collaboration, compliance, and CI/CD, and applies them to infrastructure automation. GitOps uses Git repositories as a single source of truth to deliver infrastructure as code.
GitOps delivers:
A standard workflow for application development Increased security for setting application requirements upfront Improved reliability with visibility and version control through Git Consistency across any cluster, any cloud, and any on-premise environmentKey components of a GitOps workflow
There are four key components to a GitOps workflow, a Git repository, a continuous delivery (CD) pipeline, an application deployment tool, and a monitoring system.
The Git repository is the source of truth for the application configuration and code. The CD pipeline is responsible for building, testing, and deploying the application. The deployment tool is used to manage the application resources in the target environment. The monitoring system tracks the application performance and provides feedback to the development team.