chore(repo): Add new contributing guidelines and auto-close outside PRs open in "ready to review" status (#3218)
This commit is contained in:
@@ -10,7 +10,7 @@ permissions:
|
||||
issues: read
|
||||
|
||||
jobs:
|
||||
check-pr:
|
||||
check-vouch:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: mitchellh/vouch/action/check-pr@c6d80ead49839655b61b422700b7a3bc9d0804a9 # v1.4.2
|
||||
@@ -20,3 +20,25 @@ jobs:
|
||||
require-vouch: true
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
|
||||
require-draft:
|
||||
needs: check-vouch
|
||||
if: >
|
||||
github.event.pull_request.draft == false &&
|
||||
github.event.pull_request.author_association != 'MEMBER' &&
|
||||
github.event.pull_request.author_association != 'OWNER' &&
|
||||
github.event.pull_request.author_association != 'COLLABORATOR'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Close non-draft PR
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
run: |
|
||||
STATE=$(gh pr view ${{ github.event.pull_request.number }} --repo ${{ github.repository }} --json state -q '.state')
|
||||
if [ "$STATE" != "OPEN" ]; then
|
||||
echo "PR is already closed, skipping."
|
||||
exit 0
|
||||
fi
|
||||
gh pr close ${{ github.event.pull_request.number }} \
|
||||
--repo ${{ github.repository }} \
|
||||
--comment "Thanks for your contribution! We require all external PRs to be opened in **draft** status first so you can address CodeRabbit review comments and ensure CI passes before requesting a review. Please re-open this PR as a draft. See [CONTRIBUTING.md](https://github.com/${{ github.repository }}/blob/main/CONTRIBUTING.md#pr-workflow) for details."
|
||||
|
||||
+17
-3
@@ -242,9 +242,23 @@ See the [Job Catalog](./references/job-catalog/README.md) file for more.
|
||||
|
||||
**If you get errors, be sure to fix them before committing.**
|
||||
|
||||
- Be sure to [check the "Allow edits from maintainers" option](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) while creating you PR.
|
||||
- If your PR refers to or fixes an issue, be sure to add `refs #XXX` or `fixes #XXX` to the PR description. Replacing `XXX` with the respective issue number. See more about [Linking a pull request to an issue
|
||||
](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue).
|
||||
> **Note:** We may close PRs if we decide that the cost of integrating the change outweighs the benefits. To improve the chances of your PR getting accepted, follow the guidelines below.
|
||||
|
||||
### PR workflow
|
||||
|
||||
1. **Always open your PR in draft status first.** Do not mark it as "Ready for Review" until the steps below are complete.
|
||||
2. **Address all CodeRabbit code review comments.** Our CI runs an automated code review via CodeRabbit. Go through each comment and either fix the issue or resolve it with a comment explaining why no change is needed.
|
||||
3. **Wait for all CI checks to pass.** Do not mark the PR as "Ready for Review" until every check is green.
|
||||
4. **Then mark the PR as "Ready for Review"** so a maintainer can take a look.
|
||||
|
||||
### Cost/benefit analysis for risky changes
|
||||
|
||||
If your change touches core infrastructure, modifies widely-used code paths, or could introduce regressions, consider doing a brief cost/benefit analysis and including it in the PR description. Explain what the benefit is to users and why the risk is worth it. This goes a long way toward helping maintainers evaluate your contribution.
|
||||
|
||||
### General guidelines
|
||||
|
||||
- Be sure to [check the "Allow edits from maintainers" option](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork) while creating your PR.
|
||||
- If your PR refers to or fixes an issue, be sure to add `refs #XXX` or `fixes #XXX` to the PR description. Replacing `XXX` with the respective issue number. See more about [Linking a pull request to an issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue).
|
||||
- Be sure to fill the PR Template accordingly.
|
||||
|
||||
## Adding changesets
|
||||
|
||||
Reference in New Issue
Block a user