Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions changelog.d/19084.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Warn the developer when they are releasing Synapse if a release workflow has been queued for over 15 minutes.
5 changes: 5 additions & 0 deletions scripts-dev/release.py
Original file line number Diff line number Diff line change
Expand Up @@ -596,6 +596,11 @@ 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...")
Comment on lines +600 to +601
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the case of the macOS runners not working for that whole day, we'd see this warning every 5 minutes and asked to continue.

I assume that's fine as at that point you would be monitoring the actions and continue once you see them done and not pressing continue on this script over and over.

continue
Comment on lines 599 to 607
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This prevents someone from continuing the release if one of the workflows is queued. It looks like previously we allowed people to continue even if some workflows failed so I don't think we would want to block forever in the queued case.

We should probably integrate this into the logic below and give people the option to continue anyway.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good point! I've done so in b5c66de.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Currently, this allows you to continue even without the in_progress workflows being done yet. I think we at-least want to wait for those.


if all(
workflow["status"] != "in_progress" for workflow in resp["workflow_runs"]
):
Expand Down
Loading