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-typescripters-to-the-world-of-iac-with-aws-cdk
Search
tomoki10
June 04, 2024
Technology
0
440
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
AWSでもBuildpacksを使ってDockerfileレスに出来るのか!?/can-i-use-buildpacks-to-go-dockerfile-less-in-aws
tomoki10
0
2.5k
ECS on Fargate のセキュリティ対策は何をやるべき?開発者目線で考える/security-for-ecs-on-fargate-secjawsdays
tomoki10
13
8.6k
AWS CDKの最強の書き方を実践してみる 2023年版/practice-the-strongest-writing-method-of-aws-cdk-2023-edition
tomoki10
4
5.8k
CDK支部のこれまでとこれから / jaws-ug-cdk-past-and-future
tomoki10
1
770
AWS CDKでECS on FargateのCI/CDを実現する際の理想と現実 / ideal-and-reality-when-implementing-cicd-for-ecs-on-fargate-with-aws-cdk
tomoki10
17
24k
AWSCDKを通してAWSを学ぶ/learn AWS through AWS CDK
tomoki10
0
3.1k
それでも俺はAWS CDKが作るリソースに物理名を付けたい 〜CDKのベストプラクティスは本当にベストなのか〜 / AWS CDK resource name can be a physical name
tomoki10
1
6.5k
IoT系サービス総まとめ+CDK関連アップデート/regrowth-iot-and-cdk
tomoki10
0
1.3k
RetoolとAWSでIoTデータ可視化基盤を最速で作ってみた #devio2021/iot-data-visualization-with-retool-and-aws
tomoki10
0
2.1k
Other Decks in Technology
See All in Technology
OpenFeatureと自動生成を活用したフィーチャーフラグの宣言的集約管理
biwashi
12
1.2k
SSM Inventory を使って便利に EC2 棚卸し(ハマりどころを添えて)
masahirokawahara
2
560
「メタスキル」を意図的に使おう ~自律的なチームを育むマネージャーのセルフマネジメント~/Use Metaskills consciously
ohnoeight
1
520
データ分析力を高めるSQL研修『SQL Everyone』のご紹介【SQL勉強会 #3】
hikarut
1
180
[TimeTree] Aurora から Spanner への 移行の決断と背景
3utama
2
2.6k
Safie Viewer for iOS の 技術的負債との付き合い方
safie
0
130
10分でわかる株式会社ログラス − エンジニア向け会社説明資料 / Loglass in 10 min for Engineers
loglass2019
3
15k
成長し続けるTVerサービスを支える オブザーバビリティとカスタマーサポート
techtver
PRO
2
710
Platform Orchestrators: The Missing Middle of Internal Developer Platforms?
syntasso
1
170
Adopting ZGC in HBase for LINE Messaging
lycorptech_jp
PRO
2
250
Autify Company Deck
autifyhq
1
33k
Guard を利用した AWS Config ルール
yhana
0
270
Featured
See All Featured
Happy Clients
brianwarren
92
6.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
127
32k
Code Review Best Practice
trishagee
57
16k
Why Our Code Smells
bkeepers
PRO
331
56k
A Tale of Four Properties
chriscoyier
154
22k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
19
7.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
359
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
How to Ace a Technical Interview
jacobian
273
22k
Optimising Largest Contentful Paint
csswizardry
14
2.5k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
How STYLIGHT went responsive
nonsquared
92
4.9k
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