Renovateを導入してupdate作業を自動化

ブログにRenovateを導入した。
課題感
package.jsonの更新は、auditでチェックされるのでわりと更新しやすいが、github actionのnodeなどのversionチェックができていない。 GitHub Actionを動かして、エラーやワーニングがでてからはじめてversion upしないといけないことが分かるような状態である。よくない。
事前にチェックしたり更新したい。そして自動化したい。 そこでRenovate。

mend Renovateを利用
mend社が、GitHub AppとしてRenovateを無料提供してくれている。導入しやすいためこちらを利用した。
アカウント作成しつつGitHubと連携。私は1リポジトリのみ対象とした。このリポジトリの設定画を開き以下設定にする。

Mode
をInteractive
にすることでPRが作成され、オートマージなどもできるようになる。
スケジュール
スキャンは夜中や週末に実施して、オートマージは週末実施される設定にした。仮にうまく動かなくても対応できるように。
以下はrenovate.json
の設定。
"timezone": "Asia/Tokyo",
"schedule": [
"after 10pm every weekday",
"before 5am every weekday",
"every weekend"
],
"automergeSchedule": [
"every weekend"
],
更新ルール
メジャーアップデートは初期的にはOFFにした。 一定問題ないとなったら、メジャーアップデートも自動更新にしようと思う。 CIで動作保証されるはず。
まとめ
しばらく運用してみて、特に問題なく細かなupdateは自動的に更新されるようになった。便利すぎる。 メジャーバージョンアップも問題なければ実施していきたい。
駄文
来週はJJUG CCC 2024 Springにて登壇するため、東京に行ってくる。 カンファレンスのために遠出するのは久々なので楽しみ。