Project post from Henrik Blixt and Argo maintainers
It’s with great pride and excitement that we announce Argo Rollouts 1.0! The project has seen rapid adoption and production use even in it’s 0.x releases and already sports an impressive list of users.
What is Argo Rollouts?
Argo Rollouts is a deployment controller that fills a gap with Kubernetes Deployments, extending it with advanced application deployment capabilities through blue/green, canary, analysis and experiment based deployment strategies, enabling automated, GitOps-based progressive delivery for your cloud-native applications and services.
Often used in conjunction with Argo CD, a key consideration in the implementation of Argo Rollouts, was the ability to allow for simple integration, extensibility, and flexibility, to make sure it could be used both as a standalone component as well as integrated with other projects and frameworks. Other CNCF projects, like Backstage, have already integrated with Rollouts and support it out-of-the-box.
The flexibility and integration with other community supported projects manifests itself in the large number of supported options ranging from traffic shaping to monitoring and analysis.
What value does Argo Rollouts offer?
Argo Rollouts is a drop-in replacement for the Kubernetes Deployment resource and provides management of the application lifecycle. Rollouts enables users to utilize various strategies for their deployments, enabling progressive deployment of their applications with less risk and with capabilities to quickly, or even automatically, abort or rollback to a previous stable version. This increases development velocity by inherently reducing the cost and risk of releasing software.
Key Features included in 1.0
Support for Blue/Green, Canary, Analysis and Experiment deployment strategies
Users have a number of deployment strategies to choose from, to ensure that there’s one that fits their use cases, from the basic blue/green strategy to the more advanced rules and experiment-based strategies.
A UI Dashboard
Having visibility into the health of a new release is crucial. Argo Rollouts 1.0 includes a dashboard that offers an overview of the status and health of releases, as well as allowing for operations to be initiated interactively from the UI.
Workload Referencing
A new way to perform migration to Rollouts, through an inline reference, makes moving to Rollouts from existing Kubernetes Deployments quick and seamless. It allows users to continue managing their pod specification patches against Deployment objects but use the Rollout specification for specifying the update strategies.
Additional features and enhancements
For a full list of what’s included in 1.0, please visit the release blog or release log.
Acknowledgements
A large number of people and companies contributed time and resources to this release and it wouldn’t have been possible without the support from the fantastic and rapidly growing Argo Rollouts Community! We especially like to call out the support from the following companies, without whom, this release wouldn’t have been possible: Bilibili, Bucketplace, Codefresh, DataDog, Datawire, Dynatrace, Intuit, NewRelic, Onfido, Paypal, Quizlet, Salesforce, Shipt, Skillz and Spotif