🗂
特定のブランチからの PullRequest で CodeClimate の自動レビューを動かす
motivation
- CodeClimate は、仕様として、default branch からの PullRequest でないと自動レビュー機能が動作しない
-
https://docs.codeclimate.com/docs/github-pull-requests
- Though we hope to expand our pull request integration in the future, note that we currently do NOT support:
- Pull requests against branches other than your default branch.
- Though we hope to expand our pull request integration in the future, note that we currently do NOT support:
-
https://docs.codeclimate.com/docs/github-pull-requests
- なんとかならないか、CodeClimate のサポートに質問したら回避策を教えてもらったので、この記事で記載します
approach
デフォルトブランチからの PullRequest でないと自動レビューが動作しない、という仕様は変える事が難しいようです。
その仕様を回避する方法として、以下の方法を教えてもらいました。
You do have the option of adding multiple instances of a repo to Code Climate, and specifying a different default branch for each instance
- リポジトリインスタンス(CodeClimate上のリポジトリの情報)を追加する
- default branch に、任意の feature branch を指定
- e.g. feature/sada
こうすることで、
- feature/sada から派生ブランチ feature/masashi を作成
- base branch を feature/sada とする PullRequest を作成
というように特定ブランチから派生した PullRequest を作成しても、自動レビューが動作するようになります。
pains
- この設定自体がそもそも面倒くさい
- 対象のブランチが増えるごとに、リポジトリインスタンスの追加〜設定が必要
- TEST REPORTER ID はリポジトリインスタンスごとに生成されるので、GitHub Actions の Secrets に TEST REPORTER ID を設定している時は注意
- 特定のブランチでは、そのブランチ用の TEST REPORTER ID を使って CodeClimate と連携する必要がある
conclusion
CodeClimate 側で機能として対応して欲しい
Discussion