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
TypeScripterに送るIaCの世界への招待〜AWS CDKと共に〜/inviting-...
Search
tomoki10
June 04, 2024
Technology
0
840
TypeScripterに送るIaCの世界への招待〜AWS CDKと共に〜/inviting-typescripters-to-the-world-of-iac-with-aws-cdk
TSKaigi 2024 After Talkで話した内容です。
https://layerx.connpass.com/event/318123/
tomoki10
June 04, 2024
Tweet
Share
More Decks by tomoki10
See All by tomoki10
DevinはクラウドエンジニアAIになれるのか!? 実践的なガードレール設計/devin-can-become-a-cloud-engineer-ai-practical-guardrail-design
tomoki10
3
1.1k
AWS CDKの歴史と未来について語る会〜日本発のグローバルコントリビューション〜/jaws-days-2025-cdk-panel-discussion
tomoki10
0
33
いまから始めるAWS CDK 〜モダンなインフラ構築入門〜/iac-night-cdk-introduction
tomoki10
8
2.3k
DevinでAI AWSエンジニア製造計画 序章 〜CDKを添えて〜/devin-load-to-aws-engineer
tomoki10
0
350
CDKのコードレビューを楽にするパッケージcdk-mentorを作ってみた/cdk-mentor
tomoki10
0
350
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
470
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
650
re:Invent2024のIaC周りのアップデート&セッションの共有/around-re-invent-2024-iac-updates
tomoki10
0
1.3k
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
1
1.5k
Other Decks in Technology
See All in Technology
Go の analysis パッケージで自作するリファクタリングツール
kworkdev
PRO
1
350
ISUCONにPHPで挑み続けてできるようになっ(てき)たこと / phperkaigi2025
blue_goheimochi
0
130
PostgreSQL Unconference #52 pg_tde
nori_shinoda
0
160
Why Go?
xpmatteo
0
130
Keynote - KCD Brazil - Platform Engineering on K8s (portuguese)
salaboy
0
120
KCD Brazil '25: Enabling Developers with Dapr & Backstage
salaboy
1
120
30代エンジニアが考える、エンジニア生存戦略~~セキュリティを添えて~~
masakiokuda
4
1.9k
空が堕ち、大地が割れ、海が涸れた日~もしも愛用しているフレームワークが開発停止したら?~ #phperkaigi 2025
77web
2
970
LINEギフトのLINEミニアプリアクセシビリティ改善事例
lycorptech_jp
PRO
0
140
React Server Componentは 何を解決し何を解決しないのか / What do React Server Components solve, and what do they not solve?
kaminashi
5
1k
Dapr For Java Developers SouJava 25
salaboy
1
120
Symfony in 2025: Scaling to 0
fabpot
2
100
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
328
24k
Building a Modern Day E-commerce SEO Strategy
aleyda
39
7.2k
Optimizing for Happiness
mojombo
377
70k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Documentation Writing (for coders)
carmenintech
69
4.7k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.6k
The Cost Of JavaScript in 2023
addyosmani
48
7.6k
Side Projects
sachag
452
42k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
BBQ
matthewcrist
88
9.5k
Transcript
5ZQF4DSJQUFSʹૹΔ*B$ͷੈքͷট ʙ"84$%,ͱڞʹʙ ࠤ౻ஐथ ϏδωεςΫϊϩδʔ෦
Έͳ͞Μ AWS CDKͬͯͬͯ·͢ʁ
ࠤ౻ஐथ ϏδωεςΫϊϩδʔ෦ ΞʔΩςΫτνʔϜ +"846($%,ࢧ෦ӡӦ ͖ͳ"84αʔϏε ࣗݾհ !UNL !UPNPLJ "84-BNCEB
"84$%,
ࠓ͍͑ͨ͜ͱ ͚ͨͬͨͭͩͰ͢ wΠϯϑϥ͕5ZQF4DSJQUͷܕิͰؾ࣋ͪΑ͘ॻ͚Δ w$%,ຊޠͷใ͕͔ͳΓ͋ͬͯ࢝Ί͍͢ ͞ͳ͍͜ͱ w*B$ࣗମͷར
࣍ w"84$%,ͱԿ͔ w5ZQF4DSJQUͰ͋Δ͜ͱͷར wຊͱ$%,ͷؔ wΠϕϯτએ
"84$%,ͱ w͍׳ΕͨݴޠͰ"84ϦιʔεΛ࡞Ͱ͖ΔπʔϧαʔϏε wݴޠ w5ZQF4DSJQU+BWB4DSJQU 1ZUIPO +BWB $ (PͰهड़Մೳ wಛ
w"84ϦιʔεҰ෦4BB4ΛநԽͯ͠ίʔυͰཧ w044ͳͷͰ࣮ͷৄࡉιʔεϨϕϧͰ֬ೝՄೳ "84$MPVE%FWFMPQNFOU,JU "84$%,
$%,ͷछྨ ͓͓·͔ʹछྨ͋Γ·͢ ʮcdk8s(+)Ͱ͡ΊΔKubernetesʯ https://speakerdeck.com/horsewin/cdk8s-plus-dehazimerukubernetes "84$%, $MPVE'PSNBUJPOςϯϓ ϨʔτͳͲΛੜ͠Ϋϥυ ΠϯϑϥڥΛίʔυཧ "84ϦιʔεҰ෦4BB4
ΛநԽͯ͠ཧՄೳ 5FSSBGPSNςϯϓϨʔτΛੜ ͠ɺΫϥυΠϯϑϥڥ Λίʔυཧ "84($"[VSF4BB4 ΛநԽͯ͠ཧՄೳ LTϚχϡϑΣετΛੜ ͠ɺLTڥΛखଓ͖ܕͷॻ ͖ํͰཧ LTΛཧՄೳ ※ʮTerraform ॳ৺ऀ͕ CDK for Terraform Λ৮ͬͯΈͨॴײʯ https://zenn.dev/mayforblue/articles/09574f95fdbf69 ˢࠓ͜͜ͷʂ
"84$%,ͷྫ ίʔυྫ ࡞͞ΕΔϦιʔεʢҰ෦ʣ
"84$%,ͷϢʔβ͔Βݟͨ֓ཁ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK AWS Lambda Amazon API Gateway Stack (Resource State) Generate $ cdk deploy
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code OR AWS CDK
const getItemFunction = new node_lambda.NodejsFunction(this, "getItem", { runtime: lambda.Runtime.NODEJS_20_X, entry: path.join(__dirname, "../../src/hoge/index.ts"), handler: "getItem", timeout: cdk.Duration.seconds(30), });
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code OR AWS CDK
Cfn Template 1.Synthesize Assets w"TTFUT wόϯυϧͰ͖ΔϩʔΧϧϑΝΠϧσΟϨΫτ Ϧɺ%PDLFSΠϝʔδͳͲؚ͕·ΕΔ w-BNCEBͷίʔυؚΉ w $MPVE'PSNBUJPOςϯϓϨʔτ w $%,͕ੜͨ͠$MPVE'PSNBUJPOͷςϯϓ ϨʔτϑΝΠϧ
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS account OR
AWS CDK Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy 4.Pull
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template Stack (Resource State) Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy 5.Generate 4.Pull
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template Stack (Resource State) Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy 5.Generate AWS Lambda Amazon API Gateway 6.API Call 4.Pull
Ͱ͏ϦιʔεखͰ࡞ͬͪΌͬͨΜͩΑͳ͋ *B$(FOFSBUPSͱ$%,.JHSBUFͳΒ·ͩؒʹ߹͏͔ʁ ˠ*B$(FOFSBUPS *B$( ɿطଘΠϯϑϥ͔ΒίʔυΛੜ ˠ$%,.JHSBUFɿ*B$(Λ͍$%,ίʔυΛੜ ؾʹͳΔํɺJAWS-UG CDKࢧ෦ 14ճࢀর
ຊͱ$%,ͷؔ ࣮ੈքͰ൪ʹελʔΛ͚͕ͭͨଟ͍ࠃ https://ossinsight.io/analyze/aws/aws-cdk#people
1VMM3FRVFTU࡞ࠃผͰੈքҐ ຊͱ$%,ͷؔ https://ossinsight.io/analyze/aws/aws-cdk#people
ຊਓͷίϯτϦϏϡʔλʔϨϏϡΞʔ͍ͯ૬ஊ͍͢͠ ຊͱ$%,ͷؔ https://aws.amazon.com/jp/developer/community/heroes/kenta-goto/ https://github.com/aws/aws-cdk/wiki/CDK-Community-PR-Reviews
+"846(ͷ$%,ࢧ෦ͱͯ͠ఆظతʹΠϕϯτ։࠵ ճ։࠵ $%,ͷࡉ͔͍ϊϋ͕ຊޠͰֶΔʂ ຊͱ$%,ͷؔ https://jawsug-cdk.connpass.com/
ࠓͷΠϕϯτ։࠵͠·͢ʂൃද͚ͩͰͳ͘ ϫʔΫγϣοϓ։࠵༧ఆͳͷͰؾʹͳΔํੋඇʂ એ https://jawsug-cdk.connpass.com/event/317921/
None