-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
[feat][CI] Add approval solution to reduce GitHub Actions resource consumption #17693
Conversation
78425ea
to
0cb300d
Compare
Here's the latest example of the instructions that get printed as an error message and in the workflow summary: Instructions for proceeding with the pull request:apache/pulsar pull requests should be first tested in your own fork since the apache/pulsar CI based on
If you have any trouble, please join the #contributor channel on Pulsar Slack to get real-time support. |
To reduce resource consumption, PRs would require approval before all tests would be run. PR authors would be required to run tests in their own forks to make sure that tests pass and before the PR is approved. Alternatively Apache Pulsar committers can add a ready-to-test label to the PR to make it eligible for testing. This way PR authors would have CI feedback without causing resource shortage to apache/pulsar CI. Please check the proposal email on dev mailing list: https://lists.apache.org/thread/gwfmxmxlhtsjn17sxxc367jcs4pcwofz
0cb300d
to
ceb51a4
Compare
Co-authored-by: tison <wander4096@gmail.com>
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.
LGTM. Let's give it a try :)
/pulsarbot rerun-failure-checks |
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.
LGTM
In the most recent commit 2aa2a80 to this PR, there will be an easy way to create the PR in your own fork by just clicking the link. By default the PR title will be prefixed with "[run-tests] " and the body will be "This PR is for running tests for upstream PR ${PR_URL}." |
Also added a notice |
The |
@nodece It also accepts the review approval as a way to allow tests to run. I added that based on feedback from @merlimat and @codelipenghui . |
Latest example of the markdown (this is a result of some local testing). Please notice the "Create PR in fork for running tests" link for creating the PR. Instructions for proceeding with the pull request:apache/pulsar pull requests should be first tested in your own fork since the apache/pulsar CI based on
If you have any trouble you can get support in multiple ways:
|
@lhotari Perhaps we can also always show these instructions on pull requests created. All new pull requests should encounter this case. The effect looks like pingcap/tidb#37911 (comment) and we can implement it with GitHub Actions (It's about up to 10~30 new lightweight workflow runs per day (metric)). The reason is that the summary in check result doesn't show in the main thread of the pull request. |
CC @Anonymitaet for the contribution guide updates. |
Motivation
Mailing list discussion: https://lists.apache.org/thread/gwfmxmxlhtsjn17sxxc367jcs4pcwofz
To reduce resource consumption, PRs would require approval before all tests would be run.
PR authors would be required to run tests in their own forks to make sure that tests pass and
before the PR is approved. Alternatively Apache Pulsar committers can add a ready-to-test label
to the PR to make it eligible for testing.
This way PR authors would have CI feedback without causing resource shortage to apache/pulsar CI.
Modifications
Documentation
doc-required
(Your PR needs to update docs and you will update later)
Contributor guide needs updates.
doc-not-needed
(Please explain why)
doc
(Your PR contains doc changes)
doc-complete
(Docs have been already added)