diff --git a/changelog.d/19084.misc b/changelog.d/19084.misc new file mode 100644 index 00000000000..4a84262b9fd --- /dev/null +++ b/changelog.d/19084.misc @@ -0,0 +1 @@ +Warn the developer when they are releasing Synapse if a release workflow has been queued for over 15 minutes. \ No newline at end of file diff --git a/scripts-dev/release.py b/scripts-dev/release.py index 391881797e2..c2e71e96e2e 100755 --- a/scripts-dev/release.py +++ b/scripts-dev/release.py @@ -596,6 +596,16 @@ def _wait_for_actions(gh_token: Optional[str]) -> None: if len(resp["workflow_runs"]) == 0: continue + # Warn the user if any workflows are still queued. They might need to fix something. + if any(workflow["status"] == "queued" for workflow in resp["workflow_runs"]): + _notify("Warning: at least one release workflow is still queued...") + if not click.confirm("Continue waiting for queued assets?", default=True): + click.echo( + "Continuing on with the release. Note that you may need to upload missing assets manually later." + ) + break + continue + if all( workflow["status"] != "in_progress" for workflow in resp["workflow_runs"] ):