mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-07-09 17:37:26 +00:00
4384c613af
Created a Github Action that uses the [Review-Bot app](https://github.com/paritytech/review-bot) to require more fine tuned requirements to review pull requests before allowing the PR to be merged. This uses [`pull_request_target`](https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target) for the event, not `pull_request`. This is a security measure so that an attacker doesn’t have access to the secrets. All the rules have been copied from the original `.github/pr-custom-review.yml` file. I want to clarify, this particular commit is **not intended to replace PRCR yet**. # Advantages it brings over `PRCR` Most of the features available in `PRCR` have been duplicated and enhanced. For a complete detailed write up, please see: - paritytech/pr-custom-review#114 -> Proposal for the rewrite - [Review Bot Documentation](https://github.com/paritytech/review-bot/blob/main/README.md) The most important features are: - `include` and `exclude` fields now accept an array, making it easier to read the regular expressions. - Ability to skip a rule - We can set that PRs coming from a particular user or team will cause the rule to be skipped. - This is used in the `Audit rule`, which was requested by @the-right-joyce. - This resolves paritytech/pr-custom-review#136 - Ability to request fellows instead of teams - As requested in polkadot-fellows/runtimes#7, this bot has the ability to request fellows by rank instead of users. - We currently have polkadot-fellows/runtimes#31 which is using that feature. Aside from all the rules available in `PRCR` I have added a particular rule to lock the review-bot files and require a review from the `locks-review` team, the @paritytech/ci team and the @paritytech/opstooling team to ensure that the file has been written correctly. ## Next steps The next steps will consist on paritytech/review-bot#53, once this issue has been resolved, and `review-bot` has worked without any issues on this repository for a while, we will upgrade it to be able to fully replace `PRCR`.
122 lines
3.4 KiB
YAML
122 lines
3.4 KiB
YAML
rules:
|
|
- name: CI files
|
|
condition:
|
|
include:
|
|
- ^\.gitlab-ci\.yml
|
|
- ^docker/.*
|
|
- ^\.github/.*
|
|
- ^\.gitlab/.*
|
|
- ^\.config/nextest.toml
|
|
- ^\.cargo/.*
|
|
exclude:
|
|
- ^./gitlab/pipeline/zombienet.*
|
|
min_approvals: 2
|
|
type: basic
|
|
teams:
|
|
- ci
|
|
- release-engineering
|
|
|
|
- name: Audit rules
|
|
type: basic
|
|
condition:
|
|
include:
|
|
- ^polkadot/runtime\/(kusama|polkadot|common)\/.*
|
|
- ^polkadot/primitives/src\/.+\.rs$
|
|
- ^substrate/primitives/.*
|
|
- ^substrate/frame/.*
|
|
exclude:
|
|
- ^polkadot/runtime\/(kusama|polkadot)\/src\/weights\/.+\.rs$
|
|
- ^substrate\/frame\/.+\.md$
|
|
min_approvals: 1
|
|
allowedToSkipRule:
|
|
teams:
|
|
- core-devs
|
|
teams:
|
|
- srlabs
|
|
|
|
- name: Core developers
|
|
countAuthor: true
|
|
condition:
|
|
include:
|
|
- .*
|
|
# excluding files from 'Runtime files' and 'CI files' rules
|
|
exclude:
|
|
- ^polkadot/runtime/(kusama|polkadot)/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/runtimes/assets/(asset-hub-kusama|asset-hub-polkadot)/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/runtimes/bridge-hubs/(bridge-hub-kusama|bridge-hub-polkadot)/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/runtimes/collectives/collectives-polkadot/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/common/src/[^/]+\.rs$
|
|
- ^substrate/frame/(?!.*(nfts/.*|uniques/.*|babe/.*|grandpa/.*|beefy|merkle-mountain-range/.*|contracts/.*|election|nomination-pools/.*|staking/.*|aura/.*))
|
|
- ^polkadot/runtime/(kusama|polkadot)/src/[^/]+\.rs$
|
|
- ^\.gitlab-ci\.yml
|
|
- ^docker/.*
|
|
- ^\.github/.*
|
|
- ^\.gitlab/.*
|
|
- ^\.config/nextest.toml
|
|
- ^\.cargo/.*
|
|
min_approvals: 2
|
|
type: basic
|
|
teams:
|
|
- core-devs
|
|
|
|
# cumulus
|
|
- name: Runtime files cumulus
|
|
countAuthor: true
|
|
condition:
|
|
include:
|
|
- ^cumulus/parachains/runtimes/assets/(asset-hub-kusama|asset-hub-polkadot)/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/runtimes/bridge-hubs/(bridge-hub-kusama|bridge-hub-polkadot)/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/runtimes/collectives/collectives-polkadot/src/[^/]+\.rs$
|
|
- ^cumulus/parachains/common/src/[^/]+\.rs$
|
|
type: and-distinct
|
|
reviewers:
|
|
- min_approvals: 1
|
|
teams:
|
|
- locks-review
|
|
- min_approvals: 1
|
|
teams:
|
|
- polkadot-review
|
|
|
|
# if there are any changes in the bridges subtree (in case of backport changes back to bridges repo)
|
|
- name: Bridges subtree files
|
|
type: basic
|
|
condition:
|
|
include:
|
|
- ^bridges/.*
|
|
min_approvals: 1
|
|
teams:
|
|
- bridges-core
|
|
|
|
# substrate
|
|
|
|
- name: FRAME coders substrate
|
|
condition:
|
|
include:
|
|
- ^substrate/frame/(?!.*(nfts/.*|uniques/.*|babe/.*|grandpa/.*|beefy|merkle-mountain-range/.*|contracts/.*|election|nomination-pools/.*|staking/.*|aura/.*))
|
|
type: "and"
|
|
reviewers:
|
|
- min_approvals: 2
|
|
teams:
|
|
- core-devs
|
|
- min_approvals: 1
|
|
teams:
|
|
- frame-coders
|
|
|
|
# Protection of THIS file
|
|
- name: Review Bot
|
|
condition:
|
|
include:
|
|
- review-bot\.yml
|
|
min_approvals: 2
|
|
type: "and"
|
|
reviewers:
|
|
- min_approvals: 1
|
|
teams:
|
|
- opstooling
|
|
- min_approvals: 1
|
|
teams:
|
|
- locks-review
|
|
- min_approvals: 1
|
|
teams:
|
|
- ci
|