Project post originally published on the Argo blog by Zach Aller

Welcome Argo Rollouts 1.6! This release had 33 contributors, of which 22 were first-timers, and includes 134 commits. Thank you all for your contributions! This release is a bit of a maintenance release but let’s dive into a few key things that were included.

Illustration of Argo icon holding V1.6 board

Support Multiple ALB Ingresses

It is common for security requirements to require separate ALB’s for internal vs external traffic, this used to cause issues for Argo Rollouts because we could only manage a single ALB starting in 1.6 you can now pass in an array of ingress resources to manage.

Example below:trafficRouting:
alb:
ingresses:
- alb-rollout-multi-ingress-1
- alb-rollout-multi-ingress-2
rootService: alb-rollout-root
servicePort: 80

Contributed by: n888

Self Service Notification Support

Argo Rollouts now allows teams to self serve notification configuration. Previous to 1.6 if Argo Rollouts was ran in at a cluster level, only the “admin” or team members that have permission to the namespace the Rollouts controller is running in could configure the notifications configmap and secrets. This made it impossible for teams to configure their own triggers, templates, and secrets needed to send notifications.

Starting in 1.6, users can now enable this feature via a CLI argument on the controller:--self-service-notification-enabled With this enabled, the controller will look for a configmap named: argo-rollouts-notification-configmap and secret named: argo-rollouts-notification-secret in the namespace that the Rollout resources themselves live in. This allows teams to self-configure at the namespace boundary.

Contributed by: Zach Aller and May Zhang

Refresh Rollouts Dashboard UI

The Rollout Dashboard got a nice little refresh in 1.6; it includes many small improvements around usability and theme changes. Here are a few screenshots showing some of the changes. Here is a list of some of the change and a peak at the new UI:

Screenshot showing Argo dashboard
Screenshot showing Argo dashboard, istio-host-split-analysis

Contributed by: Remington Breeze

Generate Attestations For Releases

Argo Rollouts following ArgoCD lead thanks to the great work by Justin Marquis now includes release Attestations at SLSA Level 3 you can read more on all the build artifact verifications features supported by Rollouts here. This allows users to verify that the version of the controller they are running was built by a github runner under the argo rollouts teams control and has not been tampered with by anyone external entity.

Contributed by: Justin Marquis

Plugin Updates

Plugins for traffic routers and metric providers are still being actively contributed to. We have gained a few more traffic routers since the last release, and the feature set of the first plugins is improving. You can check them out here, and if you want to contribute one, please feel free to reach out on Slack or create a GitHub issue.

Breaking Change Notices

The metric labels have changed oncontroller_clientset_k8s_request_total not to include the name of the resource for Events and ReplicaSets. These names have generated hashes in them and cause really high cardinality.

A few other metrics still have very high cardinality, but these two were the worst offending ones; we hope to improve some of the cardinality over time.

Summary

There have been many small improvements and changes in this release as well you can find the full details here and in the changelog.