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
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
dependabotを導入して失敗した話
めぐろLT#25の資料
K1mu21
March 18, 2025
More Decks by K1mu21
See All by K1mu21
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
300
Rust勉強会1回目の資料
k1mu21
0
87
ギャレトレ勉強会
k1mu21
0
84
リプレイスでやったこと
k1mu21
1
97
Cloudflareいいぞ
k1mu21
1
150
静的解析ツールを導入した話
k1mu21
1
250
WebGLを触ってみよう
k1mu21
1
65
GoのAirを使ってみた話
k1mu21
0
170
学生から社会人1年目を通して
k1mu21
2
270
Other Decks in Technology
See All in Technology
ゴールデンパスは敷いただけでは道にならない ─ 企画部門のエンジニアが技術標準を事業価値に変えるまで
mhrtech
1
200
Empower GenAI with Agile - あなたのアジャイルが生成AIのバフになる仕組み
hageyahhoo
1
210
AIレビューはどこまで任せられるのか?自動化と人が背負うレビューの境界
sansantech
PRO
3
1.1k
Terraform共通モジュールをチーム横断で“変えられる”運用へ ― リリースと適用の分離
kekke_n
1
3.3k
ZOZOTOWNの進化と信頼性を両立する負荷試験
zozotech
PRO
2
190
“それは自分の仕事じゃない"を越えて行け
yuukiyo
1
470
そのドキュメント、自動化しませんか?
yuksew
1
280
ソニー銀行におけるビジネスアジリティ向上のためのクラウドシフト戦略
srenext
0
710
LLMやAIエージェントをソフトウェアに組み込むプラクティス
shibuiwilliam
2
410
Kaggleで成長するために意識したこと
prgckwb
2
410
AIコード生成×サプライチェーン攻撃 — PHPが直面する“二重の信頼問題
shinyasaita
0
190
人を動かすのは時間ではなく、納得感 〜新任EMが入社3ヶ月、組織を2回変えた話〜
kakehashi
PRO
3
270
Featured
See All Featured
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
340
Building Adaptive Systems
keathley
44
3.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
The SEO identity crisis: Don't let AI make you average
varn
0
510
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
630
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
390
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
63
55k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
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使いてえ