We’re excited to announce our new Codefresh GitOps Cloud offering that lets you bring your GitOps deployments to the next level. You get:
- Multi-environment application promotions with Argo CD, including:
- Full visibility for application engineers
- GitHub checks to keep everyone informed
- Smart concurrency settings to keep changes flowing
- Complex promotion modeling with workflow hooks and actions
- The ability to bring your own Argo CD instance or install our Codefresh runtime
- Straightforward pricing
- A roadmap of features to come
In this blog post, we’ll dive into some of the key features of Codefresh GitOps Cloud.
Multi-environment application promotions with Argo CD
As more organizations adopt Argo CD, platform engineers need to work out how to implement a promotion workflow between different environments. Developers need to gradually move their application between several pre-production environments to safely test it and confidently deploy it to production.
If you’re already familiar with Argo CD, you’ll know that Argo CD doesn’t have concepts for environments or promotions. While Argo CD is a great sync engine for deploying application manifests to Kubernetes clusters, it doesn’t understand how a single application gets promoted between environments. This forces many teams to abuse CI tools for environment promotions and resort to custom scripts.
These custom promotions scripts are hard to maintain, difficult to debug, and, most importantly, require time and effort that your organization could spend creating features instead. The problem is even more evident if you have a large number of applications and have adopted microservices across several different Kubernetes clusters. Adding a new environment often needs updates in several places in these scripts. Application engineers can never really self-serve.
But there is a better way–with GitOps Cloud. Connect your existing Argo CD instances to start managing environment promotion without all the custom scripting. With GitOps Cloud, you can compare and promote changes between Argo CD apps, Argo CD instances, and clusters. Promotion workflows can take into account the different requirements of different environments while providing a simple dashboard for visibility at a glance no matter where apps and environment promotions are deploying to.
Codefresh GitOps Cloud makes it easy for application teams to gain full visibility, keeps everyone informed, and keeps changes flowing. You can also model complex workflows with pre/post hooks. Here are some of the features of environment promotion with Codefresh.
Full visibility for application engineers
Unlike using Argo CD on its own, Codefresh GitOps Cloud understands your environments, including different clusters, different namespaces, or any other combination of them. This gives you full visibility on how the same application advances through different environments, even across several Kubernetes clusters and Argo CD installations.
Codefresh makes environment promotion so easy that you can even promote with simple drag-and-drop actions.
We know every organization has different promotion workflows. You can model your exact promotion process with the workflow editor and then enforce it across your applications as a golden path for your developers with a Kubernetes CRD. Create any kind of serial or parallel flow with a friendly graphical editor, or directly in YAML if you prefer.
Following a single application as it moves through environments is not enough if you want to scale your Argo CD adoption. You also need a way to trace your applications back to individual changes.
When something breaks down, the first question is always, “What was the last change deployed?” You can answer this question in seconds using the timeline view in Codefresh GitOps Cloud.
The timeline view connects your Argo CD applications with the source code features they contain. This lets you understand exactly what’s deployed in each environment on a feature level. This dashboard solves a major limitation of Argo CD: the lack of visibility in the CI process. Argo CD only knows the version of a container image and nothing else.
For more information on how Codefresh models GitOps environments, please read our dedicated blog posts about:
The grouping of different applications into products
Keep everyone informed with GitHub checks
We know application engineers want to avoid context-switching between multiple tools to stay in the flow. With GitHub checks, developers can see what happened with their promotion right where the action happens—on a pull request (PR).
This means that in simple scenarios, developers don’t even need to visit the Codefresh promotion dashboard. Assuming the promotion is successfully finished, they can use the familiar GitHub UI to understand what happened to their deployment.
Keep changes flowing with smart concurrency settings
Frequent deployments are a key characteristic of fast-moving organizations. Several customers have told us that having frequent commits on a big monorepo that holds Argo CD manifests becomes challenging after scaling to a certain size.
The main issue is that Argo CD only synchronizes Kubernetes resources according to Git contents, without any insight into how important or “fresh” a commit is.
Now, in Codefresh GitOps Cloud, you can explicitly define what happens when too many commits land at the same time and a promotion starts while another is already underway.
You choose whether to terminate the previous promotion deployments (keeping only the latest one) or force everything into a queue for a more gradual promotion process without gaps.
This feature is a game changer for teams that have adopted GitOps in all their environments and currently have to “gate” developers in the CI system instead of handling this at the CD level.
Model complex promotions with workflow hooks and actions
In several scenarios, you need to accompany your promotions with other supporting tasks that aren’t directly modeled as Kubernetes resources. Some examples are:
- Sending a Slack notification when a promotion starts or finishes
- Updating a ticket when a feature reaches a specific environment
- Waiting for an approval before moving to the next step of the promotion workflow
- Performing a verification check before a lengthy migration action
Codefresh promotion workflows let you define several checks before and after a promotion happens.
These checks can be anything you want, from simple smoke tests to preflight verifications to comprehensive load testing suites.
A new feature available in Codefresh GitOps Cloud is promotion hooks.
Like traditional pipelines, promotion hooks let you define extra events or requirements that happen when a promotion starts, ends, or fails. For example, you could set up a hook to send a Slack message if a promotion fails, or a webhook call to your Grafana instance when a deployment starts.
Promotion hooks are fully integrated with the promotion flow dashboards. This means they’re saved as YAML (the GitOps way) and you can edit them using a friendly graphical interface.
Runs on your existing Argo CD infrastructure
For several years, we’ve shipped the Codefresh runtime which packages all 4 Argo projects. But some customers have struggled with the migration effort to get full value from the Codefresh platform. Migrating from custom configurations of Argo required a lot of effort to test to ensure nothing broke.
We’ve been working to overcome this challenge and we’re excited to provide the ability to connect to existing Argo CD infrastructure with Codefresh GitOps Cloud. In this new mode, you can connect your existing Argo CD instance to the Codefresh platform and still get access to all the groundbreaking features of environment promotions or workflow hooks. The agent lets you bring your own Argo CD instance, and works in a true plug-and-play mode. You install it in minutes, and if you change your mind you can also remove it without affecting your existing Argo CD instance.
You can still choose the Codefresh runtime to manage all Argo services in one bundle—Argo CD, Rollouts, Workflows, and Events. We’ve made it even easier to deploy with a new installation process that reduces the effort required.
These options let you decide what’s best for you—simplified infrastructure management, or easier adoption on top of existing Argo CD infrastructure.
Straightforward pricing
We believe your team shouldn’t have to maintain custom scripts that are difficult to update and debug. You can start using Codefresh GitOps Cloud today with your existing Argo CD instances, starting at $4,170/year. If you purchase by June 1, 2025, you also get 3 bundles for our GitOps training and certification to further enhance your Argo CD experience.
You can try GitOps Cloud for free for 45 days to see how easy it is to solve environment promotion once and for all, while keeping your existing Argo CD investment.
What’s coming next
We know environment promotion is one of the biggest challenges when adopting GitOps. We’re directly involved with the GitOps working group and are active maintainers of Argo CD leading releases, security patches, and more. This means we see firsthand how teams struggle with promotions and, more specifically, applications that span different clusters. It’s why we’ve implemented a number of features to help make environment promotion easier for teams.
But environment promotion is just the beginning. We want to make adopting GitOps easy for teams of all sizes. We’re already working on the next major feature for Codefresh GitOps Cloud.
Ready to start your GitOps journey with Codefresh? Try GitOps Cloud free for 45 days now.
You can also join us for a live webinar on April 9 to learn how Codefresh GitOps Cloud simplifies and accelerates multi-environment application promotions using Argo CD. You’ll see how teams can connect multiple Argo CD instances to a single control plane—no extra software required—and get a sneak peek at what’s coming next. Don’t miss this chance to see GitOps Cloud in action and get your questions answered by the product team. Register for the webinar.