-
Notifications
You must be signed in to change notification settings - Fork 81
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
Reusable notification workflow #665
Conversation
@kvfairchild knows github actions much better than me, will defer to her review |
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.
As written, this has the potential to send a LOT of duplicate failure notification emails; for instance, if the first test suite fails, the user will receive the exact same failure email for every subsequent status update, regardless of whether or not those test suites pass. Suggest only sending email for first detected failure.
Example of failure-notified label shown here (simulating an automerge-web submission that fails tests). When tests fail, the user is emailed and a failure-notified label is added to the PR. I then removed the failure-notified label and re-added it to ensure that testing is skipped when a failure-notified label is added (so that we don't overrun this workflow when an initial failure-notified is added). Lastly, I pushed a new change to the PR showing that the github-actions bot will remove the failure-notified label with new changes. It then emails the user about this new failure wrt the new PR, and readds the failure-notified label. When no changes have occurred to an already failing PR but a new check has failed, the notification workflow will be skipped due to the presence of the failure-notified label. @kvfairchild does this address your concerns? |
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.
Assuming this has been thoroughly tested, LGTM!
# - completion of CI checks (status events), OR | ||
# - tagging with "automerge" or "automerge-web" labels | ||
# - tagging with "automerge" or "automerge-web" labels, OR | ||
# - updates to current PRs |
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.
Don't changes to open PRs automatically result in CI checks?
# - completion of CI checks (status events), OR | ||
# - tagging with "automerge" or "automerge-web" labels | ||
# - tagging with "automerge" or "automerge-web" labels, OR | ||
# - updates to current PRs |
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.
# - updates to current PRs | |
# - updates to current PRs ("synchronize" events) |
This PR has a couple new features:
.github/workflows/user_notification_system.yml
with two capabilitiesbrainscore_vision/submission/actions_helpers.py
.github/workflows/check_if_pr_is_automergeable.yml
.github/workflows/score_new_plugins.yml
that passes correct email on to JenkinsCloses issue #80 in core.
NOTE: