Operations | Monitoring | ITSM | DevOps | Cloud

Pipeline Performance Profiling: Making CI/CD Performance, Cost, and Bottlenecks Visible

Modern CI/CD pipelines are no longer just about whether builds succeed, they’re about how fast, how efficiently, and at what cost they run. One theme has come up consistently in customer conversations: “My builds are slow, expensive, and I don’t know where to start fixing that.”

Anatomy of a Pull Request Generator

Argo CD has built a number of Generators to support various scenarios that developers need when using Argo CD and Kubernetes. In this post, I’ll be discussing the Pull Request Generator. A Pull Request Generator is an Argo CD Application Set deployment type that is configured to “watch” a Git repository for Pull Requests (PRs). Whenever a new PR is submitted that matches the specified filter, Argo CD applies the manifests from the referenced repository and path.

Top 30 Argo CD Anti-Patterns to Avoid When Adopting Gitops

The time has finally come! After the massive success of our Docker and Kubernetes guides, we are now ready to see several anti-patterns for Argo CD. Anti-patterns are questionable practices that people adopt because they seem like a good idea at first glance, but in the long run, they make processes more complicated than necessary. Several times, we have spoken with enthusiastic teams that recognize the benefits of Gitops and want to adopt Argo CD as quickly as possible.

Abusing the Target Revision Field for Argo CD Promotions

In our big guide on how to use ApplicationSets for Argo CD applications, we explained the best practice of having a 3-level structure for all manifests with a clear distinction between Argo CD Application files and Kubernetes resource files. In that article, we also outlined several anti-patterns that we have seen in the wild, meaning questionable practices that might seem ok at first glance but are problematic in the long run both for developers and for Argo CD operators.

GoodRx Releases Lifecycle Solution for Ephemeral Developer Environments with Built-in Support for Codefresh Pipelines

GoodRx, a digital healthcare platform, has released the Lifecycle project as open-source code. Lifecycle is a complete solution for temporary/ephemeral environments. The project’s build process includes built-in support for Codefresh pipelines.

How we replaced the default K8s scheduler to optimize our Continuous Integration builds

The default Kubernetes scheduler works great when your cluster is destined for long running applications. At Codefresh we use our Kubernetes clusters for running Continuous Integration pipelines which means our workloads are ephemeral (they are discarded when a pipeline has finished). This allowed us to look at the Kubernetes scheduler from a different perspective and forced us to think about how Kubernetes can work for short-running workloads.

Configuring Slack notifications with Argo Workflow - a learning experience

The acquisition of Codefresh gave me an exciting opportunity to learn new tech. Initially, I thought Argo was just Argo CD. I didn’t realize that Argo consists of 4 distinct projects: A key feature of the Codefresh product is Promotion Flows, which makes heavy use of Argo Workflows. Promotion Flows add the ability to assign Pre and or Post Actions to the process called Promotion Workflows, which are Argo Workflows with some annotations added.

Laser Focused Kubernetes Deployments Using Argo Rollouts and Header Based Routing

A Kubernetes cluster with default configuration has access to only two deployment strategies: To get access to more advanced deployment strategies such as blue/green and canaries you need to use a dedicated Progressive Delivery controller such as Argo Rollouts. We have previously covered several basic and advanced scenarios for Argo Rollouts in our blog. Today we answer another common question which is how you can select which of all live users will have access to the canary deployment.

Why Environments Beat Clusters For Dev Experience

The cloud ecosystem has reached a turning point. Tools for operators/administrators are now mature and can handle most day-to-day operations that deal with Kubernetes clusters. Finally, we can turn our focus to application developers and their needs. If you look at all the Kubernetes tools available, you’ll understand that most of them treat Kubernetes as another form of infrastructure.

Combine the Codefresh GitOps Cloud with your existing Argo CD instance

We recently announced the new Codefresh GitOps Cloud, the easiest way to promote changes across Argo CD applications–even across different clusters. With Codefresh GitOps Cloud, you can model your own promotion flow with a graphical editor (although YAML is still available). You define exactly how an application reaches production, including all the requirements and approval gates your organization needs. With Codefresh, environment information gets modelled in the platform itself.