github argoproj/argo-workflows v2.12.0-rc1

latest releases: v3.5.8, v3.5.7, v3.4.17...
pre-release3 years ago

Quick Start

What's New?

Find out in our blog post

Argo CLI

Mac

Available via curl

# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc1/argo-darwin-amd64.gz

# Unzip
gunzip argo-darwin-amd64.gz

# Make binary executable
chmod +x argo-darwin-amd64

# Move binary to path
mv ./argo-darwin-amd64 /usr/local/bin/argo

# Test installation
argo version

Linux

Available via curl

# Download the binary
curl -sLO https://github.com/argoproj/argo/releases/download/v2.12.0-rc1/argo-linux-amd64.gz

# Unzip
gunzip argo-linux-amd64.gz

# Make binary executable
chmod +x argo-linux-amd64

# Move binary to path
mv ./argo-linux-amd64 /usr/local/bin/argo

# Test installation
argo version

Argo Controller

kubectl create namespace argo
kubectl apply -n argo -f https://raw.githubusercontent.com/argoproj/argo/v2.12.0-rc1/manifests/install.yaml

Changes

v2.12.0-rc1

Enhancements

  • #1824 Argo UI and Workflow container pods running as root users
  • #2325 Native support for Docker operations
  • #2717 Automatic workflow duration prediction
  • #2899 Argo stress test
  • #3095 PVC GC Policy
  • #3525 Role-based Access Controls for SSO
  • #3557 Workflow Report
  • #3585 Add ability to automatically decompress zipped artifacts
  • #3595 Hard to see child dependencies in UI with complicated workflows
  • #3719 Investigate writing back to the informer
  • #3786 More robust workflow archiving
  • #3835 Publish roadmap
  • #3873 SSO Timeout Configuration
  • #3898 Improve Links feature
  • #3918 Tolerate deleted resources
  • #3955 Support interpolated mutex names
  • #3996 Old version of kubectl 1.15, latest stable is 1.19.1
  • #4000 Remove alpha/beta/ga labels from docs
  • #4039 Tooltips should also be supplied for ellipsized text
  • #4087 Better UI error recovery
  • #4165 Map-Reduce example
  • #4192 Provide enum type parameters for Argo workflows
  • #4204 Kubernetes API version harmonisation
  • #4233 Show workflow pod security recommendations in UI
  • #4264 Visualisation of the suspended CronWorkflows in the list
  • #4286 Allow whitespace in templates
  • #4293 Resource editor could auto set namespace
  • #4360 Link to catalog/examples from UI

Bug Fixes

  • #1554 controller.runWorker for wfc.throttler.Next(key) bug
  • #3444 Artifact mode is not recursive
  • #3872 Custom metrics are not recorded for DAG tasks.
  • #3905 DAGs may not abort on ErrDeadlineExceeded
  • #3907 Workflow controller OOMKilled with running withParams: 10k params
  • #3916 Pod did not output any logs
  • #3926 Swagger UI does not allow you to send /api/v1/events requests
  • #3927 Update default role for argo-server to support webhooks
  • #3942 LGTM (security) review tool flagged 5 issues in the code base
  • #3943 The version command fails due to lack of kubeconfig
  • #3960 Argo CLI (v2.10.0+) doesn't handle int64 values
  • #3977 Dockerfile: When using ADD with more than one source file, the destination must be a directory and end with a /
  • #3984 typo in argo cli
  • #3994 Upload via UI does not always seem to work
  • #4001 v2.11: Investigate/fix resubmitPendingPods typo
  • #4005 v2.11: Clicking on timeline tab shows events tab
  • #4016 v2.11: Pod event in UI not working for withItems
  • #4019 UI: Cron workflows filter not working as expected
  • #4027 SSO logs out quickly
  • #4033 Timestamp always present in logs provided by API
  • #4044 Workflow created from Workflowtemplate doesn't respect the activeDeadlineSeconds defined the Workflowtemplate
  • #4046 Step or dag workflows do not seem to release semaphore locks
  • #4079 Cannot read property type of undefined
  • #4081 v2.11: workflow-controller-configmap parallelism not being honored.
  • #4082 Windows Output artifact does not work
  • #4084 Some 2.11.0 URLs redirect unhelpfully
  • #4093 add back flag for kubernetes log level in CLI
  • #4101 Fix TestWorkflowRetry flakey test
  • #4107 v2.11: Steps (not DAG) always fails (with conflict error) and no helpful diagnostics (AWS only?)
  • #4144 Add request timed out in errors.isTransientNetworkErr
  • #4169 unmarshal to workflow struct failed,if outputs.parameters.value is a number
  • #4188 EKS workflowDefaults inconsistencies - kubelet executor
  • #4206 Makefile seems to have deprecated k3d commands
  • #4208 v2.11: workflow-controller-configmap serviceAccountName not being honored
  • #4216 v2.11.1: error pulling image configuration: unknown blob
  • #4232 Argo UI: Cannot read property 'x' of undefined when viewing workflow (v2.11.0)
  • #4236 Argo UI - Archived Workflows - Error when clicking on hidden nodes ellipsis
  • #4244 With workflow executor set to k8sapi, artifact optional feature does not work when tgz archive is disabled
  • #4275 Pods in retried workflow with PVC after a step that succeeded never get scheduled
  • #4296 Cannot submit workflow from workflow template with input artifact argument
  • #4301 View Workflow Page Not Receiving Progress Updates
  • #4302 [Bug] pns executor cannot retrieve correct containerId with runtime cri-containerd
  • #4326 argo lint does not detect missing input parameters
  • #4330 goofy syntax issue in examples/README.md
  • #4338 open artifact : permission denied
  • #4339 Slow / Unresponsive Kubernetes API
  • #4351 v2.11.6: Parent CronWorkflow 'argo/canary' is malformed
  • #4359 Integers are no longer supported in parameters
  • #4364 Design-out Kubernetes event bugs
  • #4386 v2.12: estimated duration not set for DAG
  • #4387 v2.12: Running pods make chart un-usable
  • #4394 Argo CLI does not work with load balancer (e.g. AWS ALB) that do not support HTTP/2
  • #4400 auth-mode server fails when Authorization header is passed.
  • #4460 Argo server api doesn't work when running inside kubernetes

Other

  • #2239 What are the minimum permissions needed in a pod security policy in order for an argo workflow to run successfully?
  • #3564 [bug] localhost not point to 127.0.0.1
  • #3859 TLS docs link to Readiness Probe example is outdated
  • Update manifests to v2.12.0-rc1
  • chore: Correct manifests
  • docs: Fix typo in docs for artifact repository

Pull Requests

  • #3558 feat(ui): Adds a report page which shows basic historical workflow metrics. Closes #3557
  • #3686 feat: Step and Task Level Global Timeout
  • #3832 fix(executor): set artifact mode recursively. Fixes #3444
  • #3862 feat(controller): Retry archiving later on error. Fixes #3786
  • #3863 docs: Adds roadmap. Closes #3835
  • #3877 docs: TLS documentation for readiness probe is outdated. Closes #3859
  • #3886 fix: Custom metrics are not recorded for DAG tasks Fixes #3872
  • #3914 fix: Default PDB example typo
  • #3921 fix(controller): End DAG execution on deadline exceeded error. Fixes #3905
  • #3924 docs: Update workflow-controller-configmap.yaml with SSL options
  • #3928 fix: Fix UI selection issues
  • #3929 fix(server): Adds missing webhook permissions. Fixes #3927
  • #3932 fix(swagger): Correct item type. Fixes #3926
  • #3934 chore: Add stress testing code. Closes #2899
  • #3935 docs: add Nikkei to user list
  • #3938 feat(controller): Support different volume GC strategies. Fixes #3095
  • #3940 chore: Fixed TestTemplateTimeoutDuration testcase
  • #3945 fix(cli): Allow argo version without KUBECONFIG. Fixes #3943
  • #3946 feat(ui): Add startedAt and finishedAt variables to configurable links. Fixes #3898
  • #3947 docs: Correct Java client project link
  • #3949 feat(controller): Panic or error on mis-matched resource version
  • #3950 fix: Fix children is not defined error
  • #3957 fix(controller): use interpolated values for mutexes and semaphores. Fixes #3955
  • #3963 fix(controller): Revert parameter value to *string. Fixes #3960
  • #3965 feat(controller): Workflow-level retryStrategy/resubmit pending pods by default. Closes #3918
  • #3967 feat(ui): Introduce modal DAG renderer. Fixes: #3595
  • #3969 docs: Correct indentation to display correctly docs in the website
  • #3972 fixed typo in docs
  • #3975 fix(server): Removes minor XSS vulnerability. Fixes #3942
  • #3978 build: Allow build with older docker. Fixes #3977
  • #3979 fix: Create global scope before workflow-level realtime metrics
  • #3985 fix: typo of argo server cli (#3984)
  • #3986 fix: argo-cluster-role pvc get
  • #3987 docs: Adding Stillwater Supercomputing
  • #3988 fix: Consider WorkflowTemplate metadata during validation
  • #3993 fix: Delete realtime metrics of running Workflows that are deleted
  • #3995 fix(ui): Report errors when uploading files. Fixes #3994
  • #3997 fix: Step and Task level timeout examples
  • #3999 chore(executor): upgrade kubectl to 1.18. Closes #3996
  • #4002 fix(controller): Script Output didn't set if template has RetryStrategy
  • #4004 fix(controller): Revert resubmitPendingPods mistake. Fixes #4001
  • #4006 fix(ui): Allow you to view timeline tab. Fixes #4005
  • #4007 docs: Update pages to GA. Closes #4000
  • #4008 docs: Add buildkit example. Closes #2325
  • #4010 feat(artifacts): Allow HTTP artifact load to set request headers
  • #4018 fix(ui): Correctly show pod events. Fixes #4016
  • #4021 fix(ui): Do not save undefined namespace. Fixes #4019
  • #4022 fix: Don't save label filter in local storage. Fixes #3966
  • #4024 feat(controller): Use pod informer for performance.
  • #4025 feat(controller): Write back workflow to informer to prevent conflict errors. Fixes #3719
  • #4028 fix: Tolerate malformed workflows when retrying
  • #4031 fix(ui): [Snyk] Fix for 1 vulnerabilities
  • #4032 docs(Windows): Add more information on artifacts and limitations
  • #4037 Add Data4Risk to users list
  • #4040 fix(artifacts): Make artifacts cross-platform compatible. Fixes #3682
  • #4041 remove the space
  • #4043 fix(ui): Tiny modal DAG tweaks. Fixes #4039
  • #4054 docs: Update release guide
  • #4060 feat: Add MaxAge to memoization
  • #4063 fix(controller): Correct the order merging the fields in WorkflowTemplateRef scenario. Fixes #4044
  • #4064 fix: Improve better handling on Pod deletion scenario
  • #4067 fix: Fix unintended inf recursion
  • #4068 feat(executor): Decompress zip file input artifacts. Fixes #3585
  • #4070 docs: Update SSO docs to clarify the user must create K8S secrets for holding the OAuth2 values
  • #4073 chore: Fix merge error
  • #4075 fix(server): Optional timestamp inclusion when retrieving workflow logs. Closes #4033
  • #4083 fix(executor): windows output artifacts. Fixes #4082
  • #4089 feat(controller): Sum resources duration for DAGs and steps
  • #4091 feat(controller): Estimate workflow & node duration. Closes #2717
  • #4094 feat(ui): Improve error recovery. Closes #4087
  • #4095 feat(server): Make Argo Server issue own JWE for SSO. Fixes #4027 & #3873
  • #4097 fix(executor): race condition in docker kill. Fixes #3053
  • #4099 fix(ui): Ignore referenced nodes that don't exist in UI. Fixes #4079
  • #4100 fix(cli): Reinstate --gloglevel flag. Fixes #4093
  • #4103 fix(controller): Process workflows at least once every 20m
  • #4104 fix(controller): Treat annotation and conditions changes as significant
  • #4105 fix(cli): Add retry to retry ;). Fixes #4101
  • #4109 fix(ui): Render children of workflow-level onExit. Fixes #3754
  • #4110 docs: Added PDOK to USERS.md
  • #4111 chore(build): Use build matrix and cache. Fixes #4062
  • #4112 fix(server): argo-server-role to allow submitting cronworkflows from UI
  • #4114 refactor: Refactor Synchronization code
  • #4115 fix(ui): No longer redirect to undefined namespace. See #4084
  • #4116 Adding reserved.ai to users list
  • #4118 fix(cli): Add retry to retry, again. Fixes #4101
  • #4119 fix(ui): Show "waiting for data" while waiting for pod logs. Fixes #3916
  • #4122 docs: Include minimal reference for templating mechanism
  • #4127 chore(build): Pre-push temporary manifest with linux/amd64. Fixes #4062
  • #4132 fix(controller): Fix throttler. Fixes #1554 and #4081
  • #4133 fix(controller): Changing DeletePropagation to background in TTL Controller and Argo CLI. Fixes #4106
  • #4137 docs: add Mixpanel to argo/USERS.md
  • #4139 fix(docs): Update k3d command for running argo locally
  • #4142 fix(cli): add validate args in delete command
  • #4146 test: Fix retry (attempt 3). Fixes #4101
  • #4147 docs: Add Onepanel to USERS.md
  • #4148 fix(controller): Correct unstructured API version. Caused by #3719
  • #4149 fix(executor): Remove IsTransientErr check for ExponentialBackoff. Fixes #4144
  • #4150 fix(ui): handle logging disconnects gracefully. Fixes #4117
  • #4155 chore: Deprecate unused RuntimeResolution field
  • #4156 fix: Provide helpful hint when creating workflow with existing name
  • #4161 chore: Update Github issue templates
  • #4166 feat(cli): Print 'no resource msg' when argo list/delete returns zero workflows
  • #4172 fix: Ensure CronWorkflows are persisted once per operation
  • #4175 docs: Add map-reduce example. Closes #4165
  • #4178 refactor: upgrade argo-ui library version
  • #4184 feat: Controller/server runAsNonRoot. Closes #1824
  • #4194 feat(controller): Track N/M progress. See #2717
  • #4195 fix: Support workflowDefaults on TTLController for WorkflowTemplateRef Fixes #4188
  • #4196 fix(executor): Update executor retry config for ExponentialBackoff.
  • #4198 feat(server): Enable RBAC for SSO. Closes #3525
  • #4202 fix(controller): Support int64 for param value. Fixes #4169
  • #4205 chore(build): Update make codegen to only run on changes
  • #4207 fix(controller): reduce withItem/withParams memory usage. Fixes #3907
  • #4213 fix(controller): Apply Workflow default on normal workflow scenario Fixes #4208
  • #4215 fix(controller): Increase the number of cron workflow workers from 2 to 8. Fixes #4211
  • #4217 fix: Revert "chore: try out pre-pushing linux/amd64 images and updating ma… Fixes #4216
  • #4218 fix(controller): Prevent tasks with names staring with a digit to use depends . Fixes #4199
  • #4219 chore(build): re-add #4127 and steps to verify image pull
  • #4220 chore: Enahnce logging around pod failures
  • #4224 fix(controller): Make the delay before the first workflow reconciliation configurable. Fixes #4107
  • #4225 feat(controller): Reduce reconcilliation time by exiting earlier.
  • #4226 chore(api): Update swagger.json with Kubernetes v1.17.5 types. Closes #4204
  • #4227 docs: Reinstate swagger.md so docs can build.
  • #4228 fix(Makefile): removed deprecated k3d cmds. Fixes #4206
  • #4237 docs: Correct formatting of variables example YAML
  • #4241 fix(ui): Fix bugs with DAG view. Fixes #4232 & #4236
  • #4243 fix(controller): Check the correct object for Cronworkflow reapply error log
  • #4248 fix(ui): Revert bad part of commit
  • #4251 docs: Add docs for securityContext and emptyDir. Closes #2239
  • #4253 feat(executor): Wait for termination using pod watch for PNS and K8SAPI executors.
  • #4255 feat(ui): Add a nudge for users who have not set their security context. Closes #4233
  • #4258 docs: daemon example: clarify prefix usage
  • #4259 docs: Minor formatting fixes
  • #4261 docs: correct a typo
  • #4263 fix(controller): Synchronization lock didn't release on DAG call flow Fixes #4046
  • #4268 fix: Add WorkflowEventBinding to aggregated roles
  • #4269 chore(controller): N/M progress fixes
  • #4274 feat(cli): Add the field selector option for delete command
  • #4276 test: Tidy up E2E tests
  • #4277 fix(controller): Fix argo retry with PVCs. Fixes #4275
  • #4278 fix(controller): Fix cron-workflow re-apply error.
  • #4279 fix(executor): Fix the artifacts option in k8sapi and PNS executor Fixes#4244
  • #4280 fix(ui): Ignore missing nodes in DAG. Fixes #4232
  • #4283 fix: TestMutexInDAG failure in master
  • #4284 docs: Update releasing guide
  • #4287 fix: WorkflowEventBinding typo in aggregated roles
  • #4292 fix(cli): Return exit code on Argo template lint command
  • #4294 fix(controller): Patch rather than update cron workflows.
  • #4295 docs: Add diagram
  • #4298 feat(ui): Submit resources without namespace to current namespace. Fixes #4293
  • #4299 docs: Docker TLS env config
  • #4300 fix(cli): Fix panic on argo template lint without argument
  • #4303 fix(ui): Resolve undefined namespace correctly
  • #4305 fix(ci): add non-root user to Dockerfile
  • #4306 Update argo-server.md
  • #4307 refactor: De-couple config
  • #4309 fix(executor): Retrieve containerId from cri-containerd /proc/{pid}/cgroup. Fixes #4302
  • #4310 feat(controller): Allow whitespace in variable subsitution. Fixes #4286
  • #4311 fix(build): Some minor Makefile fixes
  • #4314 feat(controller): add enum support in parameters (fixes #4192)
  • #4315 build: Refactor codegen to make target dependencies clearer
  • #4316 fix: merge artifact arguments from workflow template. Fixes #4296
  • #4320 chore(controller): Refactor the CronWorkflow schedule logic with sync.Map
  • #4322 docs: Update USERS.md
  • #4323 docs: Ye olde whitespace fix
  • #4329 docs: Fix incorrect link to static code analysis document
  • #4332 fix(ui): correct typing errors in cron-workflow-details
  • #4333 fix(ui): correct typing errors in workflows-toolbar
  • #4334 fix(ui): correct typing errors in events-panel
  • #4335 docs: Fix typos (/priviledged/privileged/)
  • #4340 fix(executor): Increase pod patch backoff. Fixes #4339
  • #4342 [Snyk] Security upgrade chart.js from 2.9.3 to 2.9.4
  • #4346 docs: Update pvc example with correct resource indentation. Fixes #4330
  • #4350 fix(server): Download artifacts from UI. Fixes #4338
  • #4352 fix(controller): Only warn if cron job missing. Fixes #4351
  • #4357 docs: Fix a copy-paste typo in the docs
  • #4358 fix(validate): Local parameters should be validated locally. Fixes #4326
  • #4361 Use '[[:blank:]]' instead of ' ' to match spaces/tabs
  • #4363 build: Remove vendor at end of codegen
  • #4373 fix(ui): correct typing errors in workflow-drawer
  • #4375 chore: match code comments to the generated documentation
  • #4376 fix: Fix intstr nil dereference
  • #4378 fix(ui): Reconnect to DAG. Fixes #4301
  • #4379 fix: Use DeletionHandlingMetaNamespaceKeyFunc in cron controller
  • #4380 fix(controller): Enqueue the front workflow if semaphore lock is available
  • #4382 feat(ui): Sign-post examples and the catalog. Fixes #4360
  • #4383 fix(controller): Design-out event errors. Fixes #4364
  • #4389 fix(ui): correct log viewer only showing first log line
  • #4391 docs: Fix typo in events.md
  • #4396 fix(controller): Fix estimation of duration for DAGs. Fixes #4386
  • #4397 fix(ui): Ignore running workflows in report. Fixes #4387
  • #4399 fix: Use correct template when processing metrics
  • #4401 fix(controller): Tolerate int64 parameters. Fixes #4359
  • #4404 ci: Split e2e tests to make them faster
  • #4409 fix(executor): artifact chmod should only if err != nil
  • #4411 fix: Ensure resourceDuration variables in metrics are always in seconds
  • #4412 fix(server): Only try to use auth-mode if enabled. Fixes #4400
  • #4413 fix(controller): Trigger no of workflows based on available lock
  • #4415 docs: Add Acquia to USERS.md
  • #4416 feat(cli): Support ARGO_HTTP1 for HTTP/1 CLI requests. Fixes #4394
  • #4417 fix: Assume controller is in UTC when calculating NextScheduledRuntime
  • #4420 fix(server): Add x-frame config option. Fixes #3397
  • #4421 fix(controller): When semaphore lock config gets updated, enqueue the waiting workflows
  • #4424 fix(docs): update link to container spec
  • #4429 docs: Specify that CronWorkflow timezone uses IANA standard. Fixes #4290
  • #4436 ci: Speed up e2e tests by 25%
  • #4437 chore: Update pull request template
  • #4440 fix: Resolve inconsistent CronWorkflow persistence
  • #4446 feat(ui): Visualisation of the suspended CronWorkflows in the list. Fixes #4264
  • #4449 feat(cli): Add the --no-utf8 parameter to argo get command to support ascii only terminals
  • #4450 feat(server): Add WorkflowLogs API. See #4394
  • #4451 fix: Fix validation with Argo Variable in activeDeadlineSeconds
  • #4452 fix: Return copy of stored templates to ensure they are not modified
  • #4453 chore(controller): Refactor and tidy up
  • #4456 docs: Add DDEV to USERS.md
  • #4457 feat: Add resume/suspend endpoints for CronWorkflows
  • #4459 chore(docs): Fix docgen
  • #4461 fix: localhost not being resolved. Resolves #4460, #3564
  • #4465 refactor: Simplify grpcutil.TranslateError
  • #4468 refactor(server): Use patch instead of update to resume/suspend

Contributors

  • Aayush Rangwala
  • Alex Capras
  • Alex Collins
  • Alexander Matyushentsev
  • Amim Knabben
  • Ang Gao
  • Antoine Dao
  • Bailey Hayes
  • Basanth Jenu H B
  • Bikramdeep Singh
  • Byungjin Park (BJ)
  • Douglas Lehr
  • Elli Ludwigson
  • Elvis Jakupovic
  • Fischer Jemison
  • Florian
  • Floris Van den Abeele
  • Francesco Murdaca
  • Greg Roodt
  • Huan-Cheng Chang
  • Hussein Awala
  • Ids van der Molen
  • Igor Stepura
  • InvictusMB
  • James Laverack
  • Juan C. Müller
  • Justen Walker
  • Lénaïc Huard
  • Markus Lippert
  • Martin Suchanek
  • Matt Campbell
  • Michael Crenshaw
  • Michael Ruoss
  • Michael Weibel
  • Michal Cwienczek
  • Mike Chau
  • Naisisor
  • Nicwalle
  • Niklas Vest
  • Nirav Patel
  • Noah Hanjun Lee
  • Noj Vek
  • Pavel Čižinský
  • Pranaye Karnati
  • Remington Breeze
  • Rush Tehrani
  • Saravanan Balasubramanian
  • Simon Behar
  • Snyk bot
  • Takahiro Tsuruda
  • Theodore Omtzigt
  • Tomáš Coufal
  • Wouter Remijn
  • Yuan Tang
  • boundless-thread
  • conanoc
  • dherman
  • duluong
  • ivancili
  • jacky
  • omerfsen
  • saranyaeu2987
  • tianfeiyu
  • tomgoren
  • zhengchenyu

Don't miss a new argo-workflows release

NewReleases is sending notifications on new releases.