という相談を同僚から受けたので雑に調べた範囲で書きます。また、今回は調べたレベルでそれ以上(実際に手を動かすようなこと)はやってません。

自動でアップデートしたいの定義


npmのパッケージがアップデートされると、そのMergeRequestを出してほしい。

自動でプルリク出してくれるサービス


GitHubなどと連携できる下記のようなサービスがあります。

これらはnpmパッケージのアップデートがあると自動でプルリクを出してくれます。

私はDependabotをメインに使っているのでDependabotを例にしますが、下記のようなプルリクが来ます。

Release noteやChangelogといった情報も(対象のnpmパッケージがきちんと書いていれば)表示してくれるので非常に便利です。Renovateもおおよそ似たような感じです。Greenkeepreは…ごめん、よく知らない。

余談ですが、Depndabotは対応言語も多く、Nugetパッケージのアップデートとかもプルリクだしてくれるのでかなり良いですね。

セルフホスト(オンプレ)で動かしてるGitLabで使えるんか??


さて、本題ですが、RenovateとDependabotは行けそうです。Renovateはセルフホスト版を提供しており、DependabotはRubyのパッケージで提供されているのでGitLabをいじくってGemを突っ込めばよいようです。

やり方はそれぞれ下記を参考にしてください。

まあ、Dependabotの方はGitLabをちょっといじくらないといけないので、どちらかというとRenovateの方が良いでしょうね。もちろん、機能差はあると思うので比較した上でDependabotが良ければGitLabをいじくるのもありかもしれません。すぐには試さないかもしれないですが、もしやってみたらまた記事にするかもしれません。

そもそもオンプレでセルフホストとかやってなければこんな問題にはぶつからないんですが…