1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

BotユーザーからのPRにレビューリクエストを送らないCODEOWNERSの設定方法

Posted at

概要

GitHubのCODEOWNERSは、特定のファイルやディレクトリに変更が加わった場合に、指定のメンバーに自動でレビューリクエストが送られる便利な仕組みです。

しかし、dependabotやrenovateなどの依存関係アップデートの仕組みを導入している場合、Botユーザーが出したPRは必ずしもレビューが必要でない場合もあります。自動マージの設定を有効にしているリポジトリだと、レビューリクエストがノイズになることも多々あります。

そこで、以下のようにCODEOWNERSを設定します。

npmの場合

* @some-team
package.json
package-lock.json

goの場合

* @some-team
go.mod
go.sum

php composerの場合

* @some-team
composer.json
composer.lock

CODEOWNERSは最後にマッチしたルールが適用される仕様です。つまり、例えばBotユーザーが出したPRの差分がpackage.jsonとpackage-lock.jsonのみしかない場合は、それぞれCODEOWNERSが空で上書きされるため、結果的にレビュワーのアサインが空になるという仕組みです。

このテクニックは、以下のStackOverflowの記事から引用したのですが、あまり知られていなさそうだったので、記事として残しておきました。
https://stackoverflow.com/questions/75531641/exclude-codeowners-from-dependabot-pr

なお、注意点として、この方法では通常の人間によるPRでも同じルールが適用されてしまいますが、依存関係アップデートの仕組みを導入しているリポジトリで、依存関係のみアップデートするPRを出す機会はそう多くないでしょうし、問題になるケースは稀かと思われます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?