Renovate
各種サードパーティーのライブラリのバージョンアップなどを自動化するツール。
https://docs.renovatebot.com/
設定を育てる
デフォルトの設定では、すべてのバージョンアップはバラバラの PullRequest で作られる
同時にアップデートしてほしいものがバラバラになってしまい、下手すると壊れてしまう
ビルドするだけのものでも良いので自動テストを入れましょう
packageRules を増やし、groupName でまとめる
しばらく運用して、パッケージをまとめたな、もう手動で merge しなくても良いな、となったら automerge を有効化する
設定について考える
まとめる
Terraform
AWS に関するもの、aws provider や lint は一緒に上げる
パッチバージョンについてはオートマージする
Renovate の仕様上、1回目の実行でまずは PR を作り、2回目の実行でその PR がマージできる設定・状態であればマージする
メモ
設定は最後に記述した方が優先される
code:renovate-order.json
{
"groupName": "npm packages",
"matchManagers": "npm"
},
{
"groupName": "pnpm",
"matchDepNames": "pnpm", "pnpm/pnpm"
}
この例だと、pnpm には npm package として含まれるものがあるが、下のグルーピングのルールによって上のルールとは別のグループに含めることができている