prCreationがnot-pendingになっているGithubリポジトリでRenovateが動作しなくなっていた
RenovateがPRを作成するタイミングをnot-pendingにしている場合、Githubのブランチプロテクションでpull_requestトリガーのGithub Workflowを必須にしているとPRが作成されなくなることについて説明する。l
Table of Contents
- # Why
Renovateに"prCreation": "not-pending"
が設定された状態で、Githubのブランチプロテクションでpull_requestトリガーのGithub workflowを必須にしている場合、PRが作成されなくなる。
Why
renovate.jsonに次のように指定すると、ブランチが作成されてからCIなどのステータスチェックが完了するのを待ってからRenovateがPRを作成するようになる。
{
"prCreation": "not-pending"
}
次のようなpull_requestトリガーのGithub workflowは、pull_requestが作成された際に実行される。
name: Test
on:
pull_request
Githubのブランチプロテクションで設定されたステータスチェックは、そのステータスを発生させるCIなどが動作していなくても、pendingでステータス一覧に表示される。
つまりpull_requestトリガーのGithub workflowを登録していると、PRを作成していない状態で常にpending状態のステータスチェックが残るため、not-pendingである場合、RenovateがPRを作成出来なくなる。