Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
dependabotを導入して失敗した話
Search
K1mu21
March 18, 2025
Technology
0
130
dependabotを導入して失敗した話
めぐろLT#25の資料
K1mu21
March 18, 2025
Tweet
Share
More Decks by K1mu21
See All by K1mu21
Rust勉強会1回目の資料
k1mu21
0
56
ギャレトレ勉強会
k1mu21
0
56
リプレイスでやったこと
k1mu21
1
69
Cloudflareいいぞ
k1mu21
1
120
静的解析ツールを導入した話
k1mu21
1
220
WebGLを触ってみよう
k1mu21
1
51
GoのAirを使ってみた話
k1mu21
0
130
学生から社会人1年目を通して
k1mu21
2
240
データベースで沼った話
k1mu21
0
68
Other Decks in Technology
See All in Technology
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
120
業務の煩悩を祓うAI活用術108選 / AI 108 Usages
smartbank
9
19k
AWS re:Invent 2025 を振り返る
kazzpapa3
2
110
人工知能のための哲学塾 ニューロフィロソフィ篇 第零夜 「ニューロフィロソフィとは何か?」
miyayou
0
300
国井さんにPurview の話を聞く会
sophiakunii
1
280
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
250
わが10年の叡智をぶつけたカオスなクラウドインフラが、なくなるということ。
sogaoh
PRO
0
100
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
0
870
LayerX QA Night#1
koyaman2
0
300
I tried making a solo advent calendar!
zzzzico
0
120
あの夜、私たちは「人間」に戻った。 ── 災害ユートピア、贈与、そしてアジャイルの再構築 / 20260108 Hiromitsu Akiba
shift_evolve
PRO
0
320
モノタロウ x クリエーションラインで実現する チームトポロジーにおける プラットフォームチーム・ ストリームアラインドチームの 効果的なコラボレーション
creationline
0
270
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
Skip the Path - Find Your Career Trail
mkilby
0
30
4 Signs Your Business is Dying
shpigford
187
22k
The Cult of Friendly URLs
andyhume
79
6.7k
Building Applications with DynamoDB
mza
96
6.9k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
2.8k
Designing Powerful Visuals for Engaging Learning
tmiket
0
190
How to build a perfect <img>
jonoalderson
1
4.8k
Tell your own story through comics
letsgokoyo
0
770
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
We Are The Robots
honzajavorek
0
130
How to make the Groovebox
asonas
2
1.9k
Transcript
dependaBotを入れて 失敗した話
Who? • 木村宗吾(K1mu21) ◦ 株式会社ラクーンホールディングス技術戦略部 • バックエンド(+フロントエンド+CI/CD…) ◦ 業務ではJava,PHP ◦
趣味ではGo • 趣味 ◦ ライブ ◦ サウナ • X ◦ @detunote
皆さんライブラリの更新ってどうやってます? 3分で考えた結果、あるなら以下かなーと思っています • dependabotで更新を検知 • 更新があったら手動で頑張る • CVEがでたらそれだけ対応 • 放置...
ウチはどうだったか 正直言うと最後の状態でした • 入れたら放置されてるという状況でかなりよくない状況でした ◦ 原因の一端に、入れた方が最後まで面倒を見る運用方法なのもあると思っている ▪ チーム移動などするとじゃあ面倒を誰が見るのか ▪ ライブラリ更新を検知する仕組みがないので更新の有無を知れない
• SREの方も問題視していた
ライブラリ更新の仕組みを考えた 何があれば楽に更新できるかなと考えた結果、取り合えずDependabotを導入してみ ました • dependabotを使えば自動でライブラリの更新を検知できる • 自動でPRを作ってくれるのでMergeボタンポチで終わり ◦ 誰でもアップデートができるシステムにしたい •
みんな使ってるから信頼できる
よかった点 • ライブラリ更新が自動で検知できるようになった点 • Mergeボタン押すだけでライブラリの更新ができるようになった点 • 導入や、設定がめちゃくちゃ簡単だった点
失敗だった点 gitlabで動くdependabotはGroupsキーが使えないので、1ライブラリに1PR作成されま す • biome.jsonなどの更新ができない! ◦ 毎回ブランチ更新するのだるい • しばらく放置するとPRが大量生産される •
↑大コンフリクト祭りの始まり(次ページ) ◦ 頭おかしなる • Slackに大量のPR作成通知が送信! ◦ うるさい
祭りの詳細
流石にこれは誰もアップデート作業したくないよなぁ... • と導入した自分が実際に感じてました • 上司が通知がうるさくてslack通知が来ないようにしてしまいました • 同期にアップデート作業をお願いして祭りの被害者になってもらった所、終わった 時にはいい顔はされませんでした 多分上司と同期は心の中で自分のことを殴っててもおかしくなさそう ユルシテ...
今は 今はRenovateというツールに乗り換えてアップデートの仕組みを見直し中です 問題点だったPRが分かれている点や、biome.jsonなどのファイルも自動更新してくれ るようになったので大分やりやすくなったはず... 実際に一つのリポジトリのバージョンをjava21とかにしましたが、結構好印象 強いて言うならセキュリティ問題が発生した時にそれ用のPRを作ってくれないのが Dependabotより微妙な点
ついでに(時間あれば) EOLわかるような仕組みってRenovateにない?って上司にいわれてなさそうだったの で自前でスクリプト書いて作りました (ちゃんとしたの導入するとなると金かかりそうだったので...) 自動でソレっぽいのをIssueにあげるようにしたので何もないよりいいはず...
簡単に gitlab https://libraries.io/ このライブラリの 情報ほちい これが最新版の情報や! 最新版の更新1年以上ない じゃん! Issue作ったし確認しろよ!
まとめ ライブラリの検知などができるようになったのでdependabot入れてよかった 導入する前にツールに関してもうちょっと調べるべきだった 作業を楽にするために自動化することで、色々な人がその作業できるようになると言う メリットが一番大きいなと感じました GitHub使いてえ