dependabotとは
Dependabot を使って、プロジェクトで使用される依存関係の脆弱性を監視し、依存関係を最新の状態に保ちます。
https://docs.github.com/ja/code-security/dependabot
です。
言語に応じたパッケージを監視して、いい感じに最新の状態にしてくれます(PRを作ってくれます)。
↓ GitHubの内部でも使われているみたいです。
使ってみる
- 特定のリポジトリから
Settings
を開きます。 -
Code security and analysis
を開き、Dependabot alerts
とDependabot security updates
を有効化します。 - どのパッケージを監視するのかを
.github/dependabot.yml
に記述します。 - mainブランチにpushしたら完了です。
-
.github/dependabot.yml
の例-
package-ecosystem
- パッケージマネージャーを指定します(この例では
gem
の管理をするので、bundlerを指定しています)。
- パッケージマネージャーを指定します(この例では
-
directory
- パッケージマネージャーが探すマニフェストファイルの位置を指定します。
- npmならpackage.json、bundlerならGemfileなどの位置です。
-
schedule.interval
- どれくらいの頻度で、新しいバージョンを確認するかを指定します。
- この例では1日に1回の頻度で確認するように指定しています。
- 他の設定もあるので、詳しくはこちら!
-
.github/dependabot.yml
version: 2
updates:
- package-ecosystem: "bundler"
directory: "/"
schedule:
interval: "daily"
mainブランチにpushして更新できるものがあれば、以下のようにPRが作られます。
めちゃくちゃ便利!!
参考