Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Terraform Plan/Apply結果の自動通知
Kohei Yamamoto
June 10, 2022
Programming
0
280
Terraform Plan/Apply結果の自動通知
Kohei Yamamoto
June 10, 2022
Tweet
Share
Other Decks in Programming
See All in Programming
Modern Android Developer ~ 안내서
pluu
1
590
Beyond Micro Frontends: Frontend Moduliths for the Enterprise @wad2022
manfredsteyer
PRO
0
130
エンジニアによる事業指標計測のススメ
doyaaaaaken
1
180
Make the most of Django - PyCon Italia 2022
pauloxnet
0
110
開発速度を5倍早くするVSCodeの拡張機能を作った
purp1eeeee
2
140
heyにおけるCI/CDの現状と課題
fufuhu
2
550
Swift Regex
usamik26
0
100
即、New Relic / New Relic NOW!
uzulla
0
270
Client-Side Field-Level Encryption for Apache Kafka Connect @ VoxxedDays Luxembourg 2022
hpgrahsl
0
100
Chart実装が楽になりました。
keisukeyamagishi
0
110
iOS 16からのロック画面Widget争奪戦に備える
tsuzuki817
0
180
Mobile Product Engineering
championswimmer
0
290
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
9
1.3k
Intergalactic Javascript Robots from Outer Space
tanoku
261
25k
Six Lessons from altMBA
skipperchong
14
1.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
316
22k
Fontdeck: Realign not Redesign
paulrobertlloyd
73
4.1k
WebSockets: Embracing the real-time Web
robhawkes
57
5.2k
Large-scale JavaScript Application Architecture
addyosmani
499
110k
Designing the Hi-DPI Web
ddemaree
272
32k
Learning to Love Humans: Emotional Interface Design
aarron
261
37k
Music & Morning Musume
bryan
35
4.2k
BBQ
matthewcrist
74
7.9k
Pencils Down: Stop Designing & Start Developing
hursman
112
9.8k
Transcript
Terraform Plan/Apply結果の 自動通知 2022-06-08
自己紹介 山本 晃平 (Kohei Yamamoto) • Web接客プラットフォームを提供する株式会社Sprocketのバックエンドエンジニア • 言語: Go,
Scala, Python, Terraform • インフラ、ミドルウェア: Kubernetes, BigQuery, Dataflow, Apache Kafka • バックエンド技術を広く浅く学んでいます。 • 趣味: 合気道 • Twitter: @yamamocket
トピック • Terraformとは何か • Terraform Plan/Apply結果をどう通知しているか • 結果通知を導入にあたった経緯 • 通知の実現方法の詳細
Terraformとは何か • インフラリソースをコードで管理するIaCを実現するツール • Planコマンド: インフラの変更差分を表示 • Applyコマンド: インフラの変更差分を適用 •
CodeBuildを利用してTerraform Plan/ApplyをCI/CDに組み込んで いる
Terraform Plan結果の通知 • GitHubのコメントとしてPlan結果を投稿
Terraform Apply結果の通知 • Terraform Applyが成功したかどうかをSlackに通知
結果通知を導入に当たった経緯 結果通知がないとき
結果通知を導入に当たった経緯 結果通知がないとき つら い! つら い!
結果通知を導入に当たった経緯 結果通知があるとき
Plan通知の詳細 • tfnotifyというOSSツールを使用 • GitHubへのコメントだけでなく、Slackへの投稿なども可能 • 使い方 ◦ terraform plan
| tfnotify plan • 投稿のテンプレートは設定ファイルから指定可能
Apply通知の詳細 • EventBridgeとLambdaで実装 • CodeBuildの実行結果イベントにより、Lambdaを発火し、Slackの Webhook URLへポスト
まとめ・所感 • Terraform Plan/Applyをどのように通知しているかを紹介 • 特にPlanをGitHubコメントとして投稿することでTerraform開発体験 が飛躍的に良くなった。 ◦ 今までAWSコンソールへいちいちログインするのが煩わしかっ た。
• Applyの通知により、PRをマージした後GitHubへ再訪する必要がな くなった。