-
Notifications
You must be signed in to change notification settings - Fork 180
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
Bash CI CI-KILL label added #2358
Bash CI CI-KILL label added #2358
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens if one PR is marked ready and another is marked kill in the same polling interval? If I'm understanding this code, the kill label would be ignored until the next poll.
Additionally, if you remove the kill label you create a race condition among all CI platforms and only one will see it. Not an issue if we're only using bash on one platform (as Orion right now, or WCOSS in the future), but a problem if there are multiple.
I'm also not sure about interweaving the kill functionality throughout the code that kicks off PRs. It violates the single responsibility principle. Can the kill be in a separate script (or at least separate function)? If there are places where the two share code, those pieces can be abstracted out to functions that both call.
Description
This PR adds a kill label CI-Kill that will cancel all pending jobs and builds of a bash CI that has all ready proceeded passed the Ready state.
Previously one could only "reset" a CI Bash run but a typical use case is the user wants to stop/kill a CI test and restart it later. Just add the CI-Kill label to any CI job in progress.
Resolves #2067
Type of change
Change characteristics
How has this been tested?
Ran Bash CI in development space and CI-KILL'ed several runs at different stages
Checklist