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
130
ライブラリをパブリッシュせずにすばやく試す
exoego
2
250
esbuild 最適化芸人
exoego
3
1.8k
いい感じに AWS を組み合わせたビルディングブロックでアプリ開発を支援する / TdTechTalk 2022 11
exoego
0
650
Empowering App Dev by Nicely-Crafted High-Level AWS Components
exoego
0
52
月間数十億リクエストのマイクロサービスを支える 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
1.9k
Other Decks in Programming
See All in Programming
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
150
Spring gRPC について / About Spring gRPC
mackey0225
0
220
Grafana Loki によるサーバログのコスト削減
mot_techtalk
1
130
GAEログのコスト削減
mot_techtalk
0
120
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
510
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
560
Lottieアニメーションをカスタマイズしてみた
tahia910
0
130
CI改善もDatadogとともに
taumu
0
120
『GO』アプリ データ基盤のログ収集システムコスト削減
mot_techtalk
0
120
第3回 Snowflake 中部ユーザ会- dbt × Snowflake ハンズオン
hoto17296
4
370
データの整合性を保つ非同期処理アーキテクチャパターン / Async Architecture Patterns
mokuo
47
17k
Software Architecture
hschwentner
6
2.1k
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Documentation Writing (for coders)
carmenintech
67
4.6k
Measuring & Analyzing Core Web Vitals
bluesmoon
6
240
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Designing for Performance
lara
604
68k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
Embracing the Ebb and Flow
colly
84
4.6k
GitHub's CSS Performance
jonrohan
1030
460k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Pragmatic Product Professional
lauravandoore
32
6.4k
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 マージされるように
👍いいね で応援ください