Well-Architected Framework
GitOps workflow
GitOps is a deployment methodology that uses Git repositories as the single source of truth for both application code and infrastructure configuration. When developers want to make changes, they submit pull requests to update the Git repository. Once merged, the GitOps tooling automatically applies those changes to the target environment. The GitOps development cycle creates a fully auditable, version-controlled deployment process, where Git serves as the control plane for your entire infrastructure and application lifecycle.
When you implement GitOps, you gain the following benefits:
- Version Control: All changes to infrastructure and applications are tracked in Git, providing a complete history of changes.
- Auditability: Since all changes are recorded in Git, you can easily audit who made changes, when they were made, and what the changes were.
- Collaboration: Teams can collaborate on infrastructure and application changes using pull requests, which creates a place for code reviews and discussions.
- Automation: GitOps workflows can automate the deployment process, reducing manual intervention and the risk of human error.
- Consistency: By using Git as the source of truth, you ensure that your infrastructure and applications are deployed consistently across environments.
You can learn how to Build a GitOps pipeline to deploy a three-tier application using HashiCorp tools like Terraform and Packer.
Next steps
In this section of Process automation, you learned why you should implement a GitOps workflow. Implement GitOps workflows is part of the Define and automate processes pillar.