Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Dependabot vs BundleUpdate+LockDiff

Dependabot vs BundleUpdate+LockDiff

vividmuimui

June 04, 2019
Tweet

More Decks by vividmuimui

Other Decks in Programming

Transcript

  1. BundleUpdate+LockDiff BundleUpdate+LockDiff CircleCI でBundleUpdate(ruby でのライブラリの更新) をしてPullReqest を作れるツール 正確には この資料では長いので と書きます

    以下の合わせ技+fork したもの 社内の色んな所で使われている vividmuimui/circleci-runner yhirano55/circleci-runner masutaka/circleci-bundle-update-pr vividmuimui/lock_di 5
  2. Dependabot BundleUpdate+LockDi PR ライブラリごとに 1PR 1 つのPR で一括で更新 言語 Ruby,JS

    などたくさん Ruby だけ ChangeLog Commits rubygems へのリン ク Vulnerabilities 高機能感 組み込みやすさ 参考PR Dependabot: BundleUpdate+LockDi : vividmuimui/rails_tutorial#44 vividmuimui/lock_di _sample#15 8
  3. Dependabot Dependabot ライブラリごとにPR があがる 対応言語が多い 脆弱性対応の更新なのかわかる Compatibility が見れる bot が優秀

    必要なくなったら自動で閉じたり、コンフリクトしてたら自動で rebase してくれたりする。 カスタマイズできる 全体通して圧倒的に高機能 PR がたくさん上がってマージしていくので、CI のキューが詰まりがち https://dependabot.com/#languages https://dependabot.com/docs/con g- le/ 9
  4. BundleUpdate+LockDiff BundleUpdate+LockDiff CircleCI に簡単に組み込める Ruby のBundle update だけできる Bundle Update

    してるだけなので、1PR で一括で更新が入る LockDi もそれなりに便利 Tachikoma + LockDi といった感じで組み合わせれば、CircleCi 以 外でも簡単に動く 普段自分たちが使うコマンドでupdate されるので、理解しやすい 基本的には してPR 作ってるだけなので。 Dependabot に比べると機能が少ない 個人のOSS 開発なので 10
  5. どっちが良いか・どう使い分けるか どっちが良いか・どう使い分けるか 現状両方使っている。チームの中で、それが良さそうとなった。 まだ、Dependabot を導入して1 週間も立ってないが、 Dependabot はDaily, BundleUpdate+LockDi はWeekly

    で動かしているのが 良いリズムっぽい。 ちなみに、yarn(JS) に関してもDependabot だけでなく以下を併用して Weekly で更新されるようにしている vividmuimui/circleci-runner yhirano55/circleci-runner taichi/ci-yarn-upgrade 12
  6. 良いリズム 良いリズム 基本的には Dependabot が上げてくるPR を毎日消化していく daily で動かしても、多くても1 日2,3PR 程度しか上がらない

    溜まってしまったら、 BundleUpdate+LockDi で一括マージする Dependabot のPR はbot が自動で閉じてくれる Security update( 脆弱性対応) は特に高速にマージする 13