Hello CircleCI community, we have a new exciting feature to announce based on your feedback!
We have added automatic workflow retry functionality to help you handle flaky resources and intermittent failures without manual intervention. You can now specify max-auto-reruns in your workflow configuration with a value between 1 and 5 to automatically rerun failed workflows. Just like the manual “re-run from failed” feature, only failed jobs will be retried - successfully finished jobs will not be rerun during automatic retries. This eliminates the need to manually monitor and restart workflows that fail due to environmental issues beyond your control.
The UI will provide clear indicators when a workflow is being automatically retried and show how many retry attempts have been made. This feature is available to all CircleCI customers across all plan types.
For teams dealing with flaky tests or unreliable external dependencies, this update significantly improves operational efficiency by reducing the manual overhead of workflow management. For more details on configuring automatic workflow reruns, visit the documentation.
Note: For those needing to auto-retry individual steps, automatic step retry is in the works!
1 Like
Hi folks, exciting update! For customers needing a more granular control, we now support automatic step rerun to complement our existing workflow rerun feature.
Here is the documentation: Automatic reruns :: CircleCI Documentation
2 Likes
Hi @mseong6251
This is a great new feature that replaces manual re-runs for flaky environmental situations. It kicked in for me the first time today, however I only noticed because I was following a job in real-time. Once the workflow had completed there was no indication at the overview level that there had been a re-run.
Am I missing something here and looking in the wrong place?
The successful pipeline was https://app.circleci.com/pipelines/github/cypress-io/cypress-docker-images/2769
The job which has a re-run was https://app.circleci.com/pipelines/github/cypress-io/cypress-docker-images/2769/workflows/a6737539-eff7-4304-8b4b-18473100ea23/jobs/87396 however you only see the error and auto-rerun if you manually open the job. There is nothing shown at the top level overview of jobs.
This is using the step re-run feature, and the code is in cypress-docker-images/circle.yml at 9ba52cf8f49eee870aebf7edc48a831deed9befb · cypress-io/cypress-docker-images · GitHub
- run:
name: test
command: |
docker compose --progress plain build << parameters.test-target >>
docker compose run --rm << parameters.test-target >>
max_auto_reruns: 3
auto_rerun_delay: 5m
working_directory: factory/test-project
Hi Mike! Glad to see you trying out auto-rerun and awesome feedback.
Currently, when using auto-rerun of workflows, you will see each rerun as a new workflow with the trigger event “Auto-rerun 3/4”. Please refer to the image below for reference. Do you see this?
For a step-rerun, you can see the rerun steps within the job page. In this example, the step “Exit with code 1” is rerun with a 1 minute wait between each rerun.
The screenshot you’re showing for step re-runs is exactly what I see
The problem is that the Auto-rerun status is not shown at the top level of the pipeline summary, so I have no indication that it has been triggered unless I manually examine every job.
Manually examining every job is not feasible. There needs to be some flag at a higher level to indicate that there is some flake occurring that possibly needs to be examined and rectified.