
記事を執筆することも、このサイトのライブラリたちを更新することも怠っていました。ナマケモノですね。🦥
「さすがに怖いなぁ」と思ったので、DependaBotを導入してみました。
まずはリポジトリページのInsightタブ→Dependency graphタブ→DependaBotタブからEnableボタンを押してEnableしました。

お次に.github/ディレクトリにdependabot.ymlを作成しました。
このファイルに色々書いていくんですね。
このサイトではこんな設定にしてみました。
version: 2
updates:
- package-ecosystem: "npm"
directory: "/backend"
schedule:
interval: "daily"
- package-ecosystem: "npm"
directory: "/frontend"
schedule:
interval: "daily"
- package-ecosystem: "docker-compose"
directory: "/"
schedule:
interval: "daily"
- package-ecosystem: "docker"
directory: "/.devcontainer"
schedule:
interval: "daily"
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
Frontend, BackendともにnpmではなくBunを使用していますが、package-ecosystemの指定はnpmで良いそうです。Typescriptで構成されたものは、どんなパッケージマネージャーでもnpmとして良いそう。なるへそ。
dependabot.ymlを記述してCommit & Pushすると、ActionsにCI/CDとは別にこんなWorkflowが走っていました。
Wow!!
加えて、Pull Requestタブにもこんなものが届いていました。

ここからPRのページを開いて、Workflowで作成されたブランチをマージすることで、mainブランチのpackage.jsonやその他ファイルに記述されたライブラリやフレームワークのバージョン情報を更新することができました。

マージするとCI/CDが動作し、めでたく更新されたものが自動でデプロイすることができました。
更新はこまめにしましょう。
サボっていたせいで、コードに変更を加えたりしなければならない箇所が一斉に押し寄せて大変でした。