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
550
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.4k
Angularを使って爆速で管理画面を作る
ynishimura
0
2.7k
サーバーレスアーキテクチャで作ったIoTのバックエンドシステムで遭遇したエラーと対処法
ynishimura
0
2k
HIGOBASHI.AWS 第10回「サーバーレスとデータ分析 ~AWS Lambdaを活用して効率化しよう~」
ynishimura
0
1.2k
re:Invent2018 IoT系の新サービス・アップデート
ynishimura
0
1.2k
【Developers.IO 2018】IoTを実現するためのAWSのIoT系サービス:分析、セキュリティ管理、組み込み向けサービスもあるで!
ynishimura
2
1k
HIGOBASHI.AWS 第6回「Amazon Route53で ドメインを購入して、設定してみよう」
ynishimura
0
1.7k
HIGOBASHI.AWS 第5回「AngularとAWS AppSyncで作るサーバーレスアプリケーション」
ynishimura
0
3.8k
higobashi.aws 第2回「IoTとサーバーレスとラズパイ」
ynishimura
1
1.4k
Other Decks in Programming
See All in Programming
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
270
Jaspr Dart Web Framework 박제창 @Devfest 2024
itsmedreamwalker
0
140
Effective Signals in Angular 19+: Rules and Helpers
manfredsteyer
PRO
0
350
Kaigi on Railsに初参加したら、その日にLT登壇が決定した件について
tama50505
0
140
Lookerは可視化だけじゃない。UIコンポーネントもあるんだ!
ymd65536
1
100
range over funcの使い道と非同期N+1リゾルバーの夢 / about a range over func
mackee
0
200
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.2k
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
240
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.3k
責務を分離するための例外設計 - PHPカンファレンス 2024
kajitack
9
2.3k
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
870
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
280
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
A Philosophy of Restraint
colly
203
16k
We Have a Design System, Now What?
morganepeng
51
7.3k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Designing on Purpose - Digital PM Summit 2013
jponch
116
7k
Optimizing for Happiness
mojombo
376
70k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
940
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