Codefresh launched a new initiative – GitOps 2.0 – which seeks to solve limitations that have existed in GitOps and promote best practices for the future.
Codefresh’s support for the new standard includes several new tools aimed at improving the experience and speed of continuous integration and delivery (CI/CD) with GitOps, all to help companies confidently ship code faster.
The goal of GitOps 2.0 is to provide patterns and standards that improve software delivery and reliability. GitOps, a proven robust pattern for deploying software, has evolved around a few core principles but several issues need to be addressed: dealing with multiple environments, secrets, and most urgently, observability.
Codefresh is working with the DevOps community to define those patterns and to mainstream and standardize approaches to delivering software, whether on Kubernetes or not.
“DevOps automation could not be more critical,” said Issac Roth, investor at Shasta Ventures and a key mind behind OpenShift, the most successful Kubernetes offering. “GitOps 2.0 is a critical move to mainstream the practices that help companies ship code much faster and always with confidence that their changes will work.”
According to Dan Garfield, Chief Technology Evangelist at Codefresh, the rise of microservices has led to observability difficulties. “Questions that were difficult to answer about monolithic services can be impossible to answer after moving to large microservice stacks. This is why our first pillar of GitOps 2.0 is observability,” he said.
“Today we’re releasing better tooling to not only deploy software on Kubernetes, but additional observability so you can see not only what code but also what issues are deployed.”
In addition to a detailed view that lets developers see everything related to a release and control over rollbacks, Codefresh offers larger aggregate views that make it easy to tell what’s going on across all applications. Having this visibility and control can give teams more confidence in their release processes and lead to faster, more reliable deployments.
“Having GitOps directly embedded in Codefresh made things just click for our devs,” said Codefresh user Victor Cuascut of Veeva. “Codefresh understands where DevOps is moving. The GitOps support is a game changer.”
Another important area Codefresh now supports is building logic about how and when rollouts should occur. The guiding principle is that an infrastructure should reflect the state of Git. In practice, rollouts sometimes need to be handled between many geographical regions, or for some it may not be possible to take humans out of the approvals loop.
To address this, Codefresh has introduced different deployment steps for pipelines that can trigger Git synchronization based on pipeline logic. This allows more advanced flows such as deploy, open PRs onto other infrastructure repos, or rollouts across different clusters and segments as well as automated testing of deployed versions with rollbacks.
“The adoption of GitOps 2.0 isn’t an all or nothing endeavor. With this release we’re providing onramps for teams to adopt these practices as quickly as their org allows, and ultimately to support the ideal workflows,” said Garfield.