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
HIGOBASHI.AWS 第12回「AWS CDKのConstruct Libraryを作っ...
Search
yuji nishimura
November 30, 2019
Programming
0
590
HIGOBASHI.AWS 第12回「AWS CDKのConstruct Libraryを作って 公開してみよう」
HIGOBASHI.AWS 第12回で登壇したスライドになります
yuji nishimura
November 30, 2019
Tweet
Share
More Decks by yuji nishimura
See All by yuji nishimura
Kinesis Video Streams 最新アップデートの紹介 #reinvent #cmregrowth
ynishimura
0
1.5k
Angularを使って爆速で管理画面を作る
ynishimura
0
2.9k
サーバーレスアーキテクチャで作ったIoTのバックエンドシステムで遭遇したエラーと対処法
ynishimura
0
2.1k
HIGOBASHI.AWS 第10回「サーバーレスとデータ分析 ~AWS Lambdaを活用して効率化しよう~」
ynishimura
0
1.3k
re:Invent2018 IoT系の新サービス・アップデート
ynishimura
0
1.3k
【Developers.IO 2018】IoTを実現するためのAWSのIoT系サービス:分析、セキュリティ管理、組み込み向けサービスもあるで!
ynishimura
2
1.1k
HIGOBASHI.AWS 第6回「Amazon Route53で ドメインを購入して、設定してみよう」
ynishimura
0
1.8k
HIGOBASHI.AWS 第5回「AngularとAWS AppSyncで作るサーバーレスアプリケーション」
ynishimura
0
4k
higobashi.aws 第2回「IoTとサーバーレスとラズパイ」
ynishimura
1
1.5k
Other Decks in Programming
See All in Programming
より安全で効率的な Go コードへ: Protocol Buffers Opaque API の導入
shwatanap
2
730
個人軟體時代
ethanhuang13
0
330
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
190
AIコーディングAgentとの向き合い方
eycjur
0
280
Cache Me If You Can
ryunen344
2
3k
知っているようで知らない"rails new"の世界 / The World of "rails new" You Think You Know but Don't
luccafort
PRO
1
190
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.5k
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
2
510
Swift Updates - Learn Languages 2025
koher
2
510
OSS開発者という働き方
andpad
5
1.7k
Testing Trophyは叫ばない
toms74209200
0
890
チームのテスト力を鍛える
goyoki
3
880
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
330
21k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Context Engineering - Making Every Token Count
addyosmani
3
58
Gamification - CAS2011
davidbonilla
81
5.4k
For a Future-Friendly Web
brad_frost
180
9.9k
A designer walks into a library…
pauljervisheath
207
24k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Mobile First: as difficult as doing things right
swwweet
224
9.9k
A Tale of Four Properties
chriscoyier
160
23k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.7k
Designing for Performance
lara
610
69k
The Invisible Side of Design
smashingmag
301
51k
Transcript
"84$%,ͷ$POTUSVDU -JCSBSZΛ࡞ͬͯ ެ։ͯ͠ΈΑ͏ $9ࣄۀຊ෦ ଜ༞ೋ
#higobashiaws
εϥΠυޙͰೖख͢Δ͜ͱ͕ग़དྷ·͢ͷͰ ൃදதͷ༰ΛϝϞ͢Δඞཁ͋Γ·ͤΜɻ ࣸਅࡱӨΛ͢Δ߹ ϑϥογϡɾγϟολʔԻ͕ग़ͳ͍Α͏ʹྀ͍ͩ͘͝͞ Attention
ࣗݾհ 2019 APN AWS Top Engineersೝఆ AWSೝఆ 2017/5 ΫϥεϝιουJoin
ࠓͷۀɿDevelopers.IO CAFEͷཧը໘ɺAPI ೖࣾ࣌γεʹॴଐ લ৬ͰΠϯϑϥͷӡ༻ɾอक Angular͕͖ ܦྺ ଜ ༞ೋ(29) CXࣄۀຊ෦ॴଐ େࡕΦϑΟεࡏ੶
AWS CDKΛ࣮ࡍʹͬͯΔਓ✋
ຊൃදͷରऀ w"84$%,ͷνϡʔτϦΞϧΛऴ͑ͯ࣍Կ͠Α͔໎͍ͬͯΔਓ w"84ڥΛίʔυԽͯ͠ɺΈΜͳʹڞ༗ɾ͍ͨ͠ਓ
ൃද༰ wલͷηογϣϯͰجຊతͳ͜ͱΘͬͯΔͣ wσϞ͕ϝΠϯͷൃදͰ͢ ࣦഊͨ͠Β͝ΊΜͳ͍͞ w࣮ࡍʹΤσΟλͰิ͕ޮ͘͜ͱ wαϯϓϧͷςετίʔυΛॻ͍ͯಈ͘ͱ͜ΖΛݟͯΒ͏ w࡞ͬͨ$POTUSVDUΛOQNͰެ։ͯ͠ར༻ͯ͠ΈΔ
ΞδΣϯμ w"84$%,ͷݸਓతʹྑ͔ͬͨͱ͜Ζ w$POTUSVDU-JCSBSZʹ͍ͭͯ w"84$%,ͷςετʹ͍ͭͯ wσϞ w"84$%,ͷ5JQT w·ͱΊ NJO NJO
NJO NJO NJO NJO
AWS CDKͷݸਓతʹྑ͔ͬͨͱ͜Ζ
ࣗͷ͖ͳݴޠͰIaCͰ͖Δ
ରԠݴޠ Python TypeScript Java .NET(C#, F#, …)
ΫϥεܧঝͳͲ͕͑Δ
ΫϥεܧঝͳͲ͕͑Δ நԽͰ͖ͯ গͳ͍ίʔυྔͰΠϯϑϥΛఆٛͰ͖Δ ͨͩ͠ɺࡉ͔ͳઃఆΛ͍ͨ͠ͱ͖ɺ ίʔυྔ૿͑Δ
ύοέʔδϚωʔδϟʔͰͰ͖Δ
ύοέʔδϚωʔδϟʔͰͰ͖Δ npmɺpipͳͲͰ࡞ͬͨ ConstructΛڞ༗ɾͰ͖Δ ࠓճ͜ΕΛΓ·͢
ΤσΟλͰܕνΣοΫɺิ͕ޮ͘
ΤσΟλͰܕνΣοΫɺิ͕ޮ͘ ͲΜͳϓϩύςΟ͕͋Δͷ͔ɺͲΜͳઃఆ͢ΕΑ͍͔ ΛௐΔͨΊʹ ϦϑΝϨϯεΛߦͬͨΓདྷͨΓ͢Δճ͕ݮͬͨ σϓϩΠࣦͯ͠ഊͨ͠ɺͱ͍͏͜ͱ͕ݮͬͨ
ςετίʔυ͕͔͚Δ
ςετίʔυ͕͔͚Δ ͪΌΜͱϝϯςφϯεͰ͖ΔΑ͏ʹͳͬͨ $'O࡞ͬͯ࡞Γͬͺͳ͠ɺن͕େ͖͘ͳΔͱಛʹ ࠓճ࣮ࡍʹςετίʔυΛॻ͍ͯΈ·͢
CFnςϯϓϨʔτΛ؆୯ʹ ग़ྗɾ֬ೝͰ͖Δ
CFnςϯϓϨʔτΛमਖ਼͢Δ ͱ͍͏࠷ऴखஈ͕Ͱ͖Δ
Construct Library
$POTUSVDUT-JCSBSZ 4UBDLʹ࡞͞ΕΔ"84Ϧιʔε ୯ҰͷϦιʔεෳͷ"84$%,ϦιʔεΛ·͕ͨΔ ϋΠϨϕϧίϯϙʔωϯτΛදݱ͢Δ͜ͱՄೳ طଘͷ$POTUSVDUΛܧঝͯ͠ಠࣗͷ$POTUSVDUΛఆٛ ͨ͠Γ࡞ͨ͠$POTUSVDUΛύοέʔδͱͯ͢͠ Δ͜ͱ͕Մೳ
$POTUSVDUT-JCSBSZ )JHIMFWFMDPOTUSVDUT wগͳ͍ίʔυྔͰ"84αʔϏεΛఆٛ wσϑΥϧτศརͳϝιουΛఆٛͨ͠"84ϦιʔεΛද͢Ϋϥε -PXMFWFMDPOTUSVDUT wࡉ͔͍ઃఆ͍ͨ͠ͱ͖ʹ͏ w$'ϦιʔεٴͼϓϩύςΟΛରʹͯ͠ରԠ w$GO999ʢT$GO#VDLFU"844#VDLFUΛҙຯʣ 1BUUFSOT
wෳͷϦιʔεΛؚΉҰൠతͳߏύλʔϯΛఆٛͨ͠ͷ
AWS CDKͷςετίʔυ
ࢀߟαΠτ https://aws.amazon.com/jp/blogs/ developer/testing-infrastructure-with-the- aws-cloud-development-kit-cdk/
ࢀߟαΠτ֓ཁ 4OBQTIPUUFTUT HPMEFONBTUFSUFTUT wੜ͢Δ$'OςϯϓϨʔτͱલʹੜ͞ΕͨςϯϓϨʔτ͕ಉ͡Ͱ͋Δ͔Λ ςετ 'JOFHSBJOFEBTTFSTJPOT wࢦఆͨ͠ϓϩύςΟ͍ͬͯΔ͔ςετɹɹɹɹ 7BMJEBUJPOUFTUT
w$POTUSVDUʹ༩͑ΒΕͨύϥϝʔλ͕ਖ਼͍͜͠ͱΛݕূ͢Δ65 wޡͬͨύϥϝʔλΛ༩͑ͨΒ5ISPX͞ΕΔ͔ͱ͔
σϞ
σϞͷ֓ཁ w؆୯ͳ$POTUSVDU-JCSBSZΛ࡞ͬͯOQNͰެ։ͯ͠ΈΔ w"84$%,ͷΞϓϦέʔγϣϯ͔Βެ։ͨ͠-JCSBSZΛͬͯΈΔ wެ։ͨ͠-JCSBSZΛςετΛॻ͖ͭͭػೳ֦ுͯ͠Ξοϓσʔτ wར༻͢Δଆ-JCFSUZΛΞοϓσʔτͯ͠ΈΔ
σϞͷݟͯ΄͍͠ͱ͜Ζ w$%,ͷ$-*Ͱ؆୯ʹܗ͕ͭ͘ΕΔͱ͜Ζ wςετίʔυ͕͔͚Δͱ͜Ζ wύοέʔδϚωʔδϟʔͰެ։Ͱ͖Δͱ͜Ζ wΤσΟλͰิ͕ޮ͘ͱ͜Ζ wެ։ͨ͠-JCSBSZ͕ར༻Ͱ͖Δͱ͜Ζ
$%,Ͱܗ
OQNͰެ։ ύοέʔδެ։ npm publish --access=public
εφοϓγϣοτςετ ʮ@@TOBQTIPUT@@ʯʹ$'OςϯϓϨʔτ͕࡞ > npm run test -- -u มߋΛड͚ೖΕΔͱ͖
CVJMEΕ͕ͪ मਖ਼ͨ͠ͷʹө͞Εͯͳ͍ ݪҼ΄΅ϏϧυΕ
ޙย͚ > npm unpublish @username/aws-cdk-lib-sample --force > cdk destroy
࣮ࡍʹ͑ΔͷΛ࡞Δ ͬͱ࣮ફతͳͷΛ࡞Δࡍ aws-cdkͷaws-ecs-patterns͕ࢀߟʹͳΔ https://github.com/aws/aws-cdk/tree/master/packages/%40aws-cdk/aws-ecs-patterns
·ͱΊ
·ͱΊ Happy Coding! AWS CDKΛ͏͜ͱͰΞϓϦέʔγϣϯ։ൃͷΑ͏ͳྲྀΕͰ ࣮ɺػೳՃɺϝϯςφϯεɺڞ༗Ͱ͖ΔΑ͏ʹͳΓ·ͨ͠ ຊൃදͰɺσϞΛ௨ͯ͠ ։ൃͷྲྀΕɺςετίʔυɺڞ༗ํ๏ʹ͍ͭͯઆ໌͠·ͨ͠
None