目次
- 背景
- Renovateとは
- Renovateでできること
- 対応しているpackage manager
- 使ってみる
- 参考
1. 背景
Renovateを使うとバージョンを上げないといけないライブラリ単位でgithubのPull Requestを自動で作ってくれるらしいので興味を持ちました。
2. Renovateとは
公式では以下の定義です。
Automated dependency updates. Multi-platform and multi-language.
有名な企業にも積極的に導入されているのが伺えます。
https://docs.renovatebot.com/#who-uses-renovate
3. Renovateでできること
https://docs.renovatebot.com/#why-use-renovate
- プルリクエストを取得して依存関係を更新し、ファイルをロックする。
- RenovateがPRを作成するタイミングを調整することでノイズを減らす。
- Renovateは、monoreposを含め、関連するパッケージファイルを自動的に見つける。
- 設定ファイルでボットの動作をカスタマイズでき、そのファイルは共有可能。
- 非推奨になった依存関係から、コミュニティが推奨する新しい依存関係に移行するためのプルリクエストを自動的に作成する。
4. 対応しているpackage manager
以下に記載ありましたのでご覧下さい。
5. 使ってみる
以下を参考に進めていきます。
renovateを使うリポジトリはこちらです。
package.jsonのdependencies,nodeのバージョンは以下です。
{
"dependencies": {
"typescript": "^4.1.6"
},
"volta": {
"node": "18.18.0"
}
}
Mend Renovate App をインストール
the Mend Renovate App installation pageに移動し、installをクリックして下さい。
ダッシュボード画面
Onboarding Pull Requestsを選択しました
github
するとこのようにPullRequestが作成されてます。
中身を見てみると、
それと以下の設定ファイルが作成されてました。
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base"
]
}
このPull Requestをmergeすると以下のissue、Pull Requestが作成されていました。
下にある、これにチェックするとPull Requestが自動で作成されます。
typescriptのpull requestを見てみます。
Release Notesも記載してありました。
これをマージすると無事完了ということになります。
6. 参考
7. 感想
- renovate.jsonで細かい設定ができるのでそこも今度勉強したいです。
- dependabot、synkとの違いを勉強したいと思います。
- Renovateは自動でPull Request作って、ライブラリのバージョンを管理してくれるのでとてもありがたいツールだなと思いました。