Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GitHub checks "Re-run" button doesn't work #39458

Open
jonathan-j-lee opened this issue Apr 10, 2023 · 3 comments
Open

GitHub checks "Re-run" button doesn't work #39458

jonathan-j-lee opened this issue Apr 10, 2023 · 3 comments

Comments

@jonathan-j-lee
Copy link
Contributor

In GitHub, there's a "Re-run" button next to failed checks:

image

However, clicking this button will add a comment to the PR/commit saying the request failed with a 403 error:

image

The "official" but undocumented way to re-run failed checks is to close and reopen the PR, but this is nonobvious to many contributors (e.g., #39241, #39443). The button should either work or not exist.

cc @TalbotG

@TalbotG
Copy link
Contributor

TalbotG commented Apr 10, 2023

The button should either work or not exist.

Exactly. Thank you, Jonathan.

@jgraham
Copy link
Contributor

jgraham commented Apr 17, 2023

AFAIK we can't make the button not exist.

The problem with rerunning tasks in taskcluster is that it's not really clear how it should interact with dependent tasks. If the dependent task has already run it should probably be rescheduled, but updated with the new information about the parent task. If it hasn't been run it should also be updated with the new task information, but just run once. I don't think any of this logic to update task subtrees is implemented, and instead there are two definitions of rerun: run the same task with a different task id (which then doesn't affect dependents at all), or rerun the same task with the same task id (which is then subject to the same scheduling as the original task, and still won't rerun dependents that already ran). In particular for our purposes neither option causes the sink task to rerun, and that's the one that's required to make the GH checks pass.

So basically, even if the button did something, it would require significant changes in the upstream CI provider to make it do the expected thing. So if removing the button was possible that would be the most obvious option, but I don't think it is possible.

@past
Copy link
Member

past commented May 30, 2023

There is an unanswered question about this in the GitHub community discussions, so indeed it doesn't look possible today.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants