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
60
ギャレトレ勉強会
k1mu21
0
66
リプレイスでやったこと
k1mu21
1
71
Cloudflareいいぞ
k1mu21
1
130
静的解析ツールを導入した話
k1mu21
1
220
WebGLを触ってみよう
k1mu21
1
54
GoのAirを使ってみた話
k1mu21
0
140
学生から社会人1年目を通して
k1mu21
2
240
データベースで沼った話
k1mu21
0
70
Other Decks in Technology
See All in Technology
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
93k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.6k
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
プロポーザルに込める段取り八分
shoheimitani
1
640
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
760
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
260
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
220
Greatest Disaster Hits in Web Performance
guaca
0
290
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
210
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
5
450
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
Practical Orchestrator
shlominoach
191
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
ラッコキーワード サービス紹介資料
rakko
1
2.3M
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
67
Making the Leap to Tech Lead
cromwellryan
135
9.7k
The Language of Interfaces
destraynor
162
26k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.4k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Building the Perfect Custom Keyboard
takai
2
690
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使いてえ