Create your FREE Codefresh account and start making pipelines fast. Create Account

ArgoCD Observability Using the New Codefresh Gitops Dashboard

3 min read

Introduction

In this article, we will show you how to connect ArgoCD and Codefresh so that you get the full observability experience for GitOps. ArgoCD provides the underlying deployment mechanism and Codefresh the visual dashboard to provide high-level information for deployments.

Before you start

We assume that the following are in place

What is Gitops

GitOps is a way to do Kubernetes cluster management and application delivery. It works by using Git as a single source of truth for declarative infrastructure and applications, together with tools ensuring the actual state of infrastructure and applications converges towards the desired state declared in Git.

three-pillars-of-GitOps
Originally published here

Codefresh has recently announced the Gitops 2.0 initiative that improves the observability of your environment deployments.

By observability, we define the capability to inspect the actual running state of the system right now. We observe the running system in order to understand it and control it.

If you already use GitOps you know that current tools have difficulties with the following issues:

  • No visibility on what JIRA issues were delivered to the environment
  • Missing build and image details that were delivered in the specific rollout
  • Understanding the transition between services during a time
  • Limited ability to see all failed rollouts during a time period

Bringing Codefresh and ArgoCD together

Codefresh is a Continuous Integration and Delivery platform built for Docker from the ground up. It helps companies automate their Docker workflows and streamline the lifecycle of Docker images (build, run, test, deploy).

Setting up the Codefresh Gitops Dashboard

The new GitOps dashboard in Codefresh is powered by ArgoCD. To set up the integration you need to install the ArgoCD-agent in your cluster.

Installation of the agent happens via the Codefresh CLI. You can find more details in the GitOps integration page.

Once you complete your ArgoCD agent installation you should see the health status of your agent on GitOps integration page:

Codefresh ArgoCD agent health status
Codefresh ArgoCD agent health status

With the Installation of the agent completed, we can now go to the GitOps page and add our first GitOps application:

add-application-to-gitops-panel
Codefresh GitOps page

Once we have added our first application we can see that all cluster information is synchronized with your ArgoCD server and we can open any GitOps application to check its details.

synchronized-information-with-ArgoCD
Cluster information synchronized with the ArgoCD server

On this dashboard, you can see all relevant JIRA issues, pull requests, and transitions for a specific service during a rollout.

If the container image that you deliver was built with Codefresh you can also see more detailed information.

The Codefresh GitOps dashboard will help you observe:

  • All broken releases during a date range
  • Who is the author of specific rollouts
  • How much your team delivery quality is improving over time
  • Which PRs and Issues were delivered in a specific rollout

If you need to do a rollback you can do it directly from the Codefresh GitOps dashboard:

rollback-from-dashboard
Rollback from Dashboard
view-last-rollout-information
View last rollout information

Once the rollback complete we can see that our service transition shows that we are back to the old image:

view-transition-to-the-old-image
View transition to previous image on the dashboard

In the services tab, you can see which services are currently running on your environment.

Conclusion

The role of the GitOps dashboard is to enable observation and speed up understanding and validation of the system.

Rather than inventing the wheel again, the new dashboard is based on the battle-tested ArgoCD platform which takes care of the low-level deployment details.

New to Codefresh? Create Your Free Account today!

Pasha Kostohrys

Pasha Kostohrys

I’m a Back-End developer (TL) at Codefresh. Specializing in Docker, Helm, Kubernetes, and other related things. Leading the CD direction at Codefresh. Really happy to see how my team and I are solving problems on how customer delivery flows use the technologies that we are creating.

Leave a Reply

* All fields are required. Your email address will not be published.