Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Terraform Plan/Apply結果の自動通知
Search
Kohei Yamamoto
June 10, 2022
Programming
0
850
Terraform Plan/Apply結果の自動通知
Kohei Yamamoto
June 10, 2022
Tweet
Share
Other Decks in Programming
See All in Programming
Cap'n Webについて
yusukebe
0
150
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
180
Java 25, Nuevas características
czelabueno
0
120
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
220
PC-6001でPSG曲を鳴らすまでを全部NetBSD上の Makefile に押し込んでみた / osc2025hiroshima
tsutsui
0
190
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
280
re:Invent 2025 トレンドからみる製品開発への AI Agent 活用
yoskoh
0
430
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
39
26k
Go コードベースの構成と AI コンテキスト定義
andpad
0
140
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
370
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
4k
Findy AI+の開発、運用におけるMCP活用事例
starfish719
0
1.8k
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
330
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The Cult of Friendly URLs
andyhume
79
6.7k
Between Models and Reality
mayunak
0
150
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
92
A Soul's Torment
seathinner
1
2k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
110
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
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へ再訪する必要がな くなった。