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
140
0
Share
dependabotを導入して失敗した話
めぐろLT#25の資料
K1mu21
March 18, 2025
More Decks by K1mu21
See All by K1mu21
Rust勉強会1回目の資料
k1mu21
0
68
ギャレトレ勉強会
k1mu21
0
75
リプレイスでやったこと
k1mu21
1
81
Cloudflareいいぞ
k1mu21
1
130
静的解析ツールを導入した話
k1mu21
1
230
WebGLを触ってみよう
k1mu21
1
61
GoのAirを使ってみた話
k1mu21
0
150
学生から社会人1年目を通して
k1mu21
2
250
データベースで沼った話
k1mu21
0
78
Other Decks in Technology
See All in Technology
QGISプラグイン CMChangeDetector
naokimuroki
1
270
Digitization部 紹介資料
sansan33
PRO
1
7.3k
ふりかえりがなかった職能横断チームにふりかえりを導入してみて学んだこと 〜チームのふりかえりを「みんなで未来を考える場」にするプロローグ設計〜
masahiro1214shimokawa
0
410
自分のハンドルは自分で握れ! ― 自分のケイパビリティを増やし、メンバーのケイパビリティ獲得を支援する ― / Take the wheel yourself
takaking22
1
580
🀄️ on swiftc
giginet
PRO
0
380
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.2k
新規サービス開発におけるReact Nativeのリアル〜技術選定の裏側と実践的OSS活用〜
grandbig
2
200
AIを共同作業者にして書籍を執筆する方法 / How to Write a Book with AI as a Co-Creator
ama_ch
2
110
2026年に相応しい 最先端プラグインホストの設計<del>と実装</del>
atsushieno
0
120
Rebirth of Software Craftsmanship in the AI Era
lemiorhan
PRO
2
460
DevOpsDays Tokyo 2026 見えない開発現場を、見える投資に変える
rojoudotcom
3
200
3つのボトルネックを解消し、リリースエンジニアリングを再定義した話
nealle
0
470
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Navigating Weather and Climate Data
rabernat
0
160
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
490
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Designing for Performance
lara
611
70k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
350
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
200
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Marketing to machines
jonoalderson
1
5.2k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
190
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使いてえ