Search⌘ K
AI Features

Exploring Automated Analysis

Explore automating deployment rollouts using Argo Rollouts integrated with Prometheus metrics to monitor success rates and request durations. Understand how to set conditions for automatic promotion or rollback, removing the need for manual interventions in progressive delivery workflows.

Recap

We explored how to promote rollouts manually. That might be a great solution for many, but it shouldn’t be the end goal. We should strive for more. In this context, and most of the others, “more” means the removal of manual repetitive actions.

Off we go

We’re going to try to automate the whole deployment process, including potential rollbacks. We’ll try to instruct the machines on how to judge whether the process is progressing in the right direction and whether there’s an issue that might require them to roll back. We’ll do all that by adding analysis based on metrics stored in Prometheus.

Note: Prometheus is not the only supported analysis engine. It could be Wavefront, Datadog, and a few others. Even if your metrics aren’t in one of the supported engines, you can always use the web provider that allows fetching metrics from any service reachable through a URL.

Let’s take a look at a new Helm values file called values-analysis.yaml.

The output, limited to the rollout entries, is as follows.

...
rollout:
  enabled: true

That one is much shorter than the values-pause-x2.yaml we used before. Specifically, the rollout.steps and rollout.analysis.enabled entries are missing. That’s intentional because the default values already have the ...