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
380
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
160
ライブラリをパブリッシュせずにすばやく試す
exoego
2
250
esbuild 最適化芸人
exoego
3
1.8k
いい感じに AWS を組み合わせたビルディングブロックでアプリ開発を支援する / TdTechTalk 2022 11
exoego
0
670
Empowering App Dev by Nicely-Crafted High-Level AWS Components
exoego
0
59
月間数十億リクエストのマイクロサービスを支える JVM+AWS フルサーバーレス開発事例 / Now and Future of Fully Serverless development at Chatwork
exoego
1
720
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
Generating OpenAPI schema from serializers throughout the Rails stack - Kyobashi.rb #5
envek
1
450
Rubyと自由とAIと
yotii23
6
1.9k
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
160
はじめてのIssueOps - GitHub Actionsで実現するコメント駆動オペレーション
tmknom
5
1.6k
Djangoにおける複数ユーザー種別認証の設計アプローチ@DjangoCongress JP 2025
delhi09
PRO
4
520
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
170
JAWS Days 2025のインフラ
komakichi
1
370
CDKを使ったPagerDuty連携インフラのテンプレート化
shibuya_shogo
0
130
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
250
Introduction to C Extensions
sylph01
3
130
CSS Linter による Baseline サポートの仕組み
ryo_manba
1
160
バイセルでの AI を用いた開発の取り組み ~ Devin, Cursor の活用事例・知見共有 ~
umaidashi
0
110
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Speed Design
sergeychernyshev
28
820
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
GitHub's CSS Performance
jonrohan
1030
460k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Rails Girls Zürich Keynote
gr2m
94
13k
YesSQL, Process and Tooling at Scale
rocio
172
14k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Faster Mobile Websites
deanohume
306
31k
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 マージされるように
👍いいね で応援ください