Guest post by the Argo Maintainers
We are very excited and proud to announce the latest major release in the Argo family of projects: Argo Workflows 3.0! (https://github.com/argoproj/argo-workflows/releases/tag/v3.0.0)
This third major release builds on the successful work that started three and a half years ago and adds a number of new features and capabilities to an already extensive featureset.
Since inception, Argo Workflows has amassed nearly 400 contributors, almost 8000 stars on GitHub and a very active community Slack channel with over 5000 users, spread across vendors, end-users and individuals.
The project has been deployed at over 100 companies across the world in different verticals, with many more in evaluation or roll-out phases.
Major Enhancements In This Release
3.0 contains a mix of innovation, enhancements to existing features as well as a number of improvements to further the enterprise grade quality of the project.
An easier to use and more robust UI
Users rely heavily on the UI to interact with Argo Workflows and one of the key themes for 3.0 was to improve the usability for them. By adding new robust React components, users should experience an easier to use UI, with added stability and reliability.
The UI also adds features like an event-flow page to display the integration and interaction with Argo Events, an enhanced workflow log viewer and embeddable widgets that can be used to display status and progress of a workflow.
Controller High-Availability
In earlier releases, the controller relied on Kubernetes restarting a pod to recover from a failure, which meant controller down-time while waiting for the pod to start back up. To resolve this, 3.0 introduces hot standby, allowing a second pod to be started up alongside the leader. If the leader fails, the second pod will take over immediately, removing the start-up wait and thus reducing the MTTR.
Artifact Enhancements
To simplify the creation of workflows, reduce the risk of errors and minimize the need for tedious repetition, two artifact features that work in conjunction were introduced. First, Argo Workflows now allows users to configure a default artifact repository for their namespace. Secondly, users only have to specify the key in their manifests and the corresponding non-key value will be fetched from the repository.
As an added benefit of not duplicating non-key elements, workflows using this pattern will consume less disk space.
Additional Changes and Enhancements
More details on the enhancements can be found in the release blog: (https://blog.argoproj.io/argo-workflows-v3-0-4d0b69f15a6e).
A full list of all changes in 3.0 is available in the release log (https://github.com/argoproj/argo-workflows/releases)
Acknowledgements
This release was truly a community effort with a large number of contributors providing time and effort reviewing and contributing code, beta-testing features and providing valuable help and feedback in community meetings and in the Slack channels.
The core team especially wants to thank the following companies and organizations for valuable contributions to this release: Ant Group, Kebotix, Colaberry/CCRi, Aliyun, CoreWeave, Pipekit, Sandvik CODE, Pollination, CERN, IBM