GtHubでプルリクエスト時、レビュアー(=Code owners)にから承認をもらうルールの適用

はじめに

GtHubでプルリクエスト時、レビュアー(=Code owners)にから承認をもらうルールを適用する。

ルールの作成

Rulesetを作成

[Settings] - [Repository] - [Rulesets]を押下する。次に[New ruleset] - [New branch ruleset]を押下する。

以下のように設定する。

  • Ruleset Name:任意
  • Enforcement status:Active
  • Target repositories:任意
  • Target branches:main, develop

その他はデフォルトの設定とした。

Teamの作成

Rulesetで指定したCode Ownersに関連させるTeamを作成する。 以下の設定で作成した。

TeamをCode Ownersとして設定

レポジトリごとに設定を行う。

docs.github.com

上記を参考に、チームを設定する場合は、@org/team-name で記載する。 そのため、以下のようにCODEOWNERSのファイルを作成した。

$ git clone <repository>
$ cd <repository>

$ ORG=org
$ TEAM_NAME=code_owners
$ mkdir .github
$ cat > .github/CODEOWNERS << EOF
* @$ORG/$TEAM_NAME
EOF

作成後、リポジトリにプッシュした。

Teamをレポジトリに追加

対象のレポジトリにて、[Settings] - [Collaborators and teams]を押下する。 [Add teams]で前述で追加したチームを追加する。 権限はWrite以上とする

最後に、CODEOWNERSを追加したコミット履歴を確認し、エラーが出力されていないことを確認する

これで、レビュアー(=Code owners)にから承認をもらうルールを作成できた。

参考

qiita.com

docs.github.com