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
terraform-provider-aws にプルリクして マージされるまで
Search
TATSUNO Yasuhiro
June 26, 2024
Programming
2
370
terraform-provider-aws にプルリクして マージされるまで
JAWS-UG名古屋 × Media-JAWS@中京テレビ
https://jawsug-nagoya.connpass.com/event/316106/
TATSUNO Yasuhiro
June 26, 2024
Tweet
Share
More Decks by TATSUNO Yasuhiro
See All by TATSUNO Yasuhiro
Bun に LCOV 出力を実装した
exoego
2
140
ライブラリをパブリッシュせずにすばやく試す
exoego
2
250
esbuild 最適化芸人
exoego
3
1.8k
いい感じに AWS を組み合わせたビルディングブロックでアプリ開発を支援する / TdTechTalk 2022 11
exoego
0
660
Empowering App Dev by Nicely-Crafted High-Level AWS Components
exoego
0
53
月間数十億リクエストのマイクロサービスを支える JVM+AWS フルサーバーレス開発事例 / Now and Future of Fully Serverless development at Chatwork
exoego
1
710
Scala と AWS でフルサーバーレス開発事例 / How Chatworks uses Scala and Serverless
exoego
3
1.4k
忙しい Scala 開発者の超時間節約術 / Big Timesavers for Busy Scala Developers
exoego
1
1.1k
TypeScript の便利な型変形を なんとかして Scala.js で使う / Emulating TypeScript Utility Types in ScalaJS
exoego
2
2k
Other Decks in Programming
See All in Programming
生成AIで加速するテスト実装 - ロリポップ for Gamersの事例と 生成AIエディタの活用
kinosuke01
0
110
Ruby on cygwin 2025-02
fd0
0
180
5分で理解する SOLID 原則 #phpcon_nagoya
shogogg
1
300
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
230
Datadog Workflow Automation で圧倒的価値提供
showwin
1
160
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
920
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
230
クリーンアーキテクチャから見る依存の向きの大切さ
shimabox
5
960
楽しく向き合う例外対応
okutsu
0
590
CloudNativePGを布教したい
nnaka2992
0
110
Better Code Design in PHP
afilina
0
160
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
140
Featured
See All Featured
A designer walks into a library…
pauljervisheath
205
24k
Thoughts on Productivity
jonyablonski
69
4.5k
Practical Orchestrator
shlominoach
186
10k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
510
How GitHub (no longer) Works
holman
314
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Building Applications with DynamoDB
mza
93
6.2k
Product Roadmaps are Hard
iamctodd
PRO
50
11k
A Philosophy of Restraint
colly
203
16k
A Tale of Four Properties
chriscoyier
158
23k
Transcript
2024.5.23 nagoya.ts #1 TATSUNO Yasuhiro 2024.6.27 JAWS-UG 名古屋 x Media-JAWS
@中京テレビ TATSUNO Yasuhiro terraform-provider-aws にプルリクして マージされるまで 通常 LT
自己紹介 - TATSUNO Yasuhiro - TreasureData所属 Staff Engineer, Realtime 2.0
CDP - 好きな AWS は Lambda, StepFunctions, S3 - severless-framework(v1〜v2)コミッター - SNS: @exoego on GitHub, 𝕏(Twitter)
Q. Terraform で AWS 構築してますか? ✋
Terraform とは - Hashicorp のコード構成管理ツール IaC 製品 (Infrastructure as Code)。今日の発表に出てきたような
さまざまな AWS をコードから自動構築 - 2014年にリリース、多くの企業で採用。実戦経験豊富 - AWS 初め Azure, GCP, OCI, Cloudflare, Snowflake など 様々な製品に対応してるのも人気の理由 - 独自言語 HCL に加え、AWS CDK との連携で TypeScript, Python, Java, C#, Go でも記述可能
Terraform と AWS - terraform-provider-aws というプロバイダー (ライブラリのようなもの)として提供 - 誰もが欲しいメジャー機能はリリースから比較的すぐに 開発される
- マイナー機能はお前がやらねば誰がやる
使ってる AWS で困ったので、やってみた MemoryDB for Redis 2021/9 GA VPC Lattice
2023/3 GA
意外と簡単……プルリクするまでは…… - プルリクで従うべき手順がドキュメントに書いてる - ざっくり言えば AWS SDK 使ってリソースを探したり、変 更するだけ。ふだん SDK
でアプリ開発してるのと同じ - どの AWS も設計がほぼ一緒なので、既存コードを参考に すぐ書けるものもあった - 受け入れテスト(実際の AWS にデプロイして実行)も コード化されてるので、動作確認も簡単だった
いちばん大変なのは…… レビューがマジで遅い!
ぼくのプルリクがマージされるまでの日数 - 5日 ←まあ OSS なら速い方 - 41日 ←これくらいもよくある -
229日 ←えっ…… - 315日 ←オイオイオイ 何度もレビュー・修正を繰り返して遅くなったので はなく、レビュー開始がただ遅い。マージはすぐ。 クリティカルな課題は正攻法(プルリク)とは別に 暫定策を並行で進めるべし!
優先度を左右するらしいさまざまな要素 - リソース制約 ⇨まあそうですよね - Customer や Partner(AWS など)からの要望 -
Customer -> Customer support, Sales Eng. -> Hashicorp(やってみたけど、 大口顧客でないせいかダメでした……) - Customer -> AWS Solution Architects -> Hashicoprp - Community からの要望 - GitHub の issue/PR への reaction (👍) How We Priotize - https://hashicorp.github.io/terraform-provider-aws/prioritization/
AWS コミュニティでできることは その機能/バグ修正いいねと思ったら 👍 いいね を残す それだけで決まらないにしても
ところで みなさん これって AWS IAM あるある じゃないですか? Error updating IAM
policy arn:aws:iam::1234567890:policy/MyAwesomePolicy: LimitExceeded: Cannot exceed quota for PolicySize: 6144 ぼくは年に数回やらかします
デプロイ前=plan 時(CIなど) に Terraform で IAM ポリシーサイ ズをチェックしよう!! https://bit.ly/tf33088 マージされるように
👍いいね で応援ください