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
すべてのリポジトリを監視する魔法
Search
MasayaNakamura
November 28, 2024
Technology
74
0
Share
すべてのリポジトリを監視する魔法
MasayaNakamura
November 28, 2024
More Decks by MasayaNakamura
See All by MasayaNakamura
YouはどうしてSREに?
shoppingjaws
0
840
(品質を監視する)SLOと向き合うための武器
shoppingjaws
0
49
リモートで新入社員がゴキゲンに働く方法教えます
shoppingjaws
0
88
Other Decks in Technology
See All in Technology
BFCacheを活用して無限スクロールのUX を改善した話
apple_yagi
0
130
JAWS DAYS 2026でAIの「もやっと」感が解消された話
smt7174
1
110
AIにより大幅に強化された AWS Transform Customを触ってみる
0air
0
210
私がよく使うMCPサーバー3選と社内で安全に活用する方法
kintotechdev
0
150
昔話で振り返るAWSの歩み ~S3誕生から20年、クラウドはどう進化したのか~
nrinetcom
PRO
0
120
AgentCoreとLINEを使った飲食店おすすめアプリを作ってみた
yakumo
2
270
Microsoft Fabricで考える非構造データのAI活用
ryomaru0825
0
530
OPENLOGI Company Profile for engineer
hr01
1
61k
GitHub Advanced Security × Defender for Cloudで開発とSecOpsのサイロを超える: コードとクラウドをつなぐ、開発プラットフォームのセキュリティ
yuriemori
1
120
Sansanの認証基盤を支えるアーキテクチャとその振り返り
sansantech
PRO
1
120
20260323_データ分析基盤でGeminiを使う話
1210yuichi0
0
210
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
77k
Featured
See All Featured
Everyday Curiosity
cassininazir
0
180
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
500
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
4 Signs Your Business is Dying
shpigford
187
22k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Believing is Seeing
oripsolob
1
99
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
120
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Fireside Chat
paigeccino
42
3.9k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Transcript
すべてのリポジトリを管理する魔法 @ShoppingJaws / かいもの 監視
自己紹介 名前:@ShoppingJaws / かいもの 所属:スタディスト 役割:SRE 主食:CI/CD,IaC,DevOps 他 :SRE NEXT運営 好きなツール:1Password,aqua
本名がタガログ語で ”かいもの上手”(意訳)って意味
背景 - どちらかというとPolyレポ環境 - メンテ対象のリポジトリの数は30くらい(多分) - 弊社のリポジトリはIaCで管理されている - wetなmanifestを保つために検証環境を立ち上げると、Botが自動でいろいろなリ ポジトリにPushする
負債 - 脆弱性検知の通知を見逃しがち - ちゃんと設定しないと通知されない - FailureしているActionsに気付けない - リポジトリ間で相互に作用する仕組みがあり、Push先以外でFail する
- 全部にif: failureを導入し、徹底するのがむずい - リポジトリ一つ一つに手作業で設定をし続けるのは大変 - 作業は30秒で終わるけど、x30となると話が違う 漏れなく、特定のイベントだけ監視したい
アイデア - Github Webhookが使えそうだけど - SlackがNestedなJSONを受付ない仕様 - Webhookの通知すべてを知りたい訳じゃない - dependabot_alert
イベントはopen/closeなど事ある毎にWebhookを とばしてくる - リポジトリをIaC管理しているので、宣言的に通知を設定したい - 対象リポジトリに抜け漏れなく導入
何したの LTなのでいろいろ端折って
GitHub Webhook ->Lambda -> Slack Workflow
Lambdaの処理 平滑化 NestedなJSONを1階層しかないJSONへ変換 →SlackWebhookはフラットなJSONしか受け取ってくれない仕様 例)repository.name => repository-name 条件フィルタ クエリパラメータで渡された条件を元にSlackへ転送するか判断 例)dependabot_alertなら、https://<lambdaURL>?alert.state=open
github_repository_webhookに宣言的に通知を記述できるようになった
結論 リポジトリを作る時に宣言するだけで、通知が飛ぶようになった ここにあるイベントであれば通知 できるはず PushイベントだけはLambdaの 同時実行Quotaを念の為確認し ておいた方がよい
EOF あれ、これも負債では?