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
CDKでValidationする本当の方法 / cdk-validation
Search
k.goto
January 23, 2023
Programming
2
1.5k
CDKでValidationする本当の方法 / cdk-validation
2023/01/25開催 JAWS-UG CDK支部 #5「〜新春隠し芸大会〜」での発表資料です。
k.goto
January 23, 2023
Tweet
Share
More Decks by k.goto
See All by k.goto
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
3
240
S3バケットを高速で削除・空にするツール「cls3」 / s3-deletion-tool-cls3
gotok365
4
420
AWS CDKで コンテナイメージスキャンを行う 〜ECRとその他の方法〜 / cdk-container-image-scan
gotok365
2
930
スタートアップでこそCDKが活きた〜生産性を向上できた5つの理由〜 / startup-cdk-productivity
gotok365
9
3.3k
AWS CDKで"使う"GoFデザインパターン 〜実際どうなの?〜 / GoF design patterns used with AWS CDK
gotok365
3
980
AWS CDKで学ぶGoFデザインパターン〜IaCにもコード設計〜 / aws dev day cdk gof design patterns
gotok365
11
4.1k
CloudWatch複合アラームでELBの5XXをいい感じに検知しようとしたらうまくいかなかった話 / cloudwatch alarm elb 5xx
gotok365
0
2.4k
AWS CDKとZodを活用したバリデーションパターン集 / validation patterns with cdk and zod
gotok365
4
2.7k
App Runnerで AppでないものをRunする / run non apps with app runner
gotok365
5
2k
Other Decks in Programming
See All in Programming
Elm 0.19.0 Changes
bkuhlmann
0
490
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
540
try! Swift Tokyo 2024 参加報告 / try! Swift Tokyo 2024 Report
hironytic
0
210
CDKコントリビュートの最初の壁を越えよう! -簡単issueの見つけ方-
badmintoncryer
2
120
大規模Reactアプリのリアーキテクチャ~8万行のTanStack Query移行の軌跡~
kj455
4
970
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
1
180
Ruby GitHub Packages
bkuhlmann
0
630
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
310
Hanami and htmx
bkuhlmann
0
210
dbtのドメイン分割による データ基盤の改善とDigdagとの連携
sakama
0
370
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
450
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
170
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
244
20k
Unsuck your backbone
ammeep
663
57k
A better future with KSS
kneath
231
16k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
7
1k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
It's Worth the Effort
3n
180
27k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
Thoughts on Productivity
jonyablonski
58
3.8k
Being A Developer After 40
akosma
59
580k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Transcript
LHPUP าͷςοΫ $%,Ͱ7BMJEBUJPO͢Δຊͷํ๏ +"846($%,ࢧ෦ʙ৽य़Ӆܳ͠େձʙ
ࣗݾհ w ςοΫϦʔυ w าͷςοΫ ٕज़ϒϩά ‣ "84ωλׂ w
ϥʔϝϯ͖ w 5XJUUFS!@TUFQ@UFDI ‣ LHPUP าͷςοΫ
ʙ৽य़Ӆܳ͠େձʙ ͔͍ࣗͬͯ͠ͳ͍Ͱ͋Ζ͏ػೳͷ͓
લఏ w $%,5ZQF4DSJQUͰ࣮͍ͯ͠·͢ w όʔδϣϯ ‣ /PEFKT ‣ 5ZQF4DSJQU ‣
"84$%, ຊهࣄͷ࣮ߦ༰ɺWͩͱগ͠ڍಈ͕มΘΓ·͢
$%,Ͱ7BMJEBUJPO͍ͨ͠ͳ͋
7BMJEBUJPOͯ͠Έͨ
7BMJEBUJPOͯ͠Έͨ ˞ಡ·ͳͯ͘େৎͰ͢
7BMJEBUJPOͯ͠Έͨ &SSPSUIFDPOTUSVDU$EL"EE7BMJEBUJPO4UBDLIBTBWBMJEBUF NFUIPE XIJDIJTOPMPOHFSTVQQPSUFE6TFDPOTUSVDUOPEFBEE7BMJEBUJPO UP BEEWBMJEBUJPOTUPBDPOTUSVDU w ελοΫΫϥεʹWBMJEBUF ϝιου࡞ͬͪΌμϝ w
lDPOTUSVDUOPEFBEE7BMJEBUJPO Λ͍ͳ͍͞ ‣ όϦσʔγϣϯΛίϯετϥΫτʹՃ͢Δ ˞WBMJEBUF NFUIPEJTOPMPOHFSTVQQPSUFE $%,Wͩͱ·ͨҧ͏ͷͰ͢ ΦʔόʔϥΠυʹͳΔ
BEE7BMJEBUJPO IUUQTEPDTBXTBNB[PODPNDELBQJWEPDT DPOTUSVDUT/PEFIUNMBEEXCSWBMJEBUJPOWBMJEBUJPO ͨ͠όϦσʔγϣϯ͕ DELTZOUI࣌ʹΓ·͢
JOUFSGBDF*7BMJEBUJPO IUUQTEPDTBXTBNB[PODPNDELBQJWEPDTDPOTUSVDUT*7BMJEBUJPOIUNM
ݺͼग़ؔ͠ ͜ΕΛ࡞ͯ͠ όϦσʔγϣϯϧʔϧΛ࣮ .Z7BMJEBUPSͷΠϯελϯεΛੜ UIJTOPEFBEE7BMJEBUJPOʹ͢
ॻ͍ͯΈͨ 7BMJEBUPS w ྫʣ8"'ͷϦʔδϣϯͱείʔϓͷΈ߹ΘͤͷόϦσʔγϣϯ ˞BEE7BMJEBUJPJO͠ͳͯ͘DELEFQMPZ࣌ʹΤϥʔʹͳΔྫͰ͕͢ɺ͋͘·ͰྫͰ͢
ॻ͍ͯΈͨ 4UBDL w ελοΫΫϥεͰόϦσʔγϣϯ 7BMJEBUPS Λ͢ ͨͬͨߦʂ *GUSZ UISPXOFX&SSPS ͱ͔͍Βͳ͍ʂ
࣮ߦͯ͠Έͨ DELTZOUI .Z7BMJEBUPSWBMJEBUF Ͱ SFHJPO͕zVTFBTUzͰͳ͍ͱΤϥʔʹ͢ΔΑ͏όϦσʔγϣϯͯ͋͠Δ &SSPS7BMJEBUJPOGBJMFEXJUIUIFGPMMPXJOHFSSPST <$EL"EE7BMJEBUJPO4UBDL>3FHJPONVTUCFVTFBTUXIFO$-06%'30/5
ෳΤϥʔͷݕ w Γ͕TUSJOH<>ͳͷͰɺෳͷΤϥʔΛݕɾग़ྗͰ͖Δ &SSPS7BMJEBUJPOGBJMFEXJUIUIFGPMMPXJOHFSSPST <$EL"EE7BMJEBUJPO4UBDL>5FTU&SSPS <$EL"EE7BMJEBUJPO4UBDL>5FTU&SSPS ʢ༻ྫʣ ελοΫʹͨ͠֎෦ύϥϝʔλ Ͱҧͨ͠ύϥϝʔλΛશ෦ग़ྗ
Ϣʔεέʔε w ελοΫ͢ύϥϝʔλɾίϯςΩετͷใʹରͯ͠όϦσʔτ͍ͨ͠ ‣ ࣮ߦͯ͠ΤϥʔʹͳΒͳ͍͚ͲΦϖϨʔγϣϯ্͍͗ͨ ˞ࠓճڍ͛ͨྫBEE7BMJEBUJPO͠ͳͯ͘DELEFQMPZ࣌ʹΤϥʔʹͳΓ·͢ 㾎͋͘·ͰαϯϓϧྫͳͷͰɻɻɻ 㾎DELTZOUI࣌ʹ͛Δͱ͍͏ྑ͍ ‣
"TQFDU͏Α͏ͳͷͰͳ͍ ελοΫಛ༗ͷϧʔϧ
ϝϦοτ w ෳΤϥʔͷϋϯυϦϯά ‣ *GPSUSZDBUDI &SSPS UISPX ͩͱجຊతʹҰͭͷΤϥʔ ։ൃऀମݧΞοϓʂ
w อकੑ্ ‣ ΧϓηϧԽʹΑΓɺόϦσʔγϣϯϧʔϧΛม͑ͯελοΫΫϥεʹมߋ͕ͳ͍ ‣ ͚ʹΑͬͯɺίʔυελοΫߏͷݟ௨͠ྑ͘ͳΔ w ެ͕ࣜఏڙ ‣ Ϩʔϧʹ͔ͬΔʂ
ެࣜ$%,8PSLTIPQʮόϦσʔγϣϯςετʯ IUUQTDELXPSLTIPQDPNKBUZQFTDSJQUBEWBODFE UPQJDTDPOTUSVDUUFTUJOHWBMJEBUJPOUFTUTIUNM ެࣜͰ͢Β BEE7BMJEBUJPOΛ ͍ͬͯ·ͤΜͰͨ͠ʂʂʂ
ʙ৽य़Ӆܳ͠େձʙ ͜Ε͕ຊͷӅܳ͠ɻɻɻ
Ԡ༻ w 5ZQF4DSJQUͷ$%,ελοΫΛ;PEͰόϦσʔγϣϯ͢Δ ‣ IUUQTHPUPLIBUFOBCMPHDPNFOUSZUTDEL[PEWBMJEBUJPO w $%,ͷ֎෦ύϥϝʔλʹܕ͚ͩͰͳ੍͔͚͘Δ ‣ IUUQTHPUPLIBUFOBCMPHDPNFOUSZDELQBSBNFUFSUZQFWBMJEBUJPO
ࠓͷ༰ͷৄࡉ w ϒϩάɿ"84$%,ͰόϦσʔγϣϯΛߦ͏ BEE7BMJEBUJPO ‣ IUUQTHPUPLIBUFOBCMPHDPNFOUSZDELBEEWBMJEBUJPO ۩ମతͳίʔυɾղઆ͕ࡌͤͯ͋Γ·͢ɻ w
(JU)VC ‣ IUUQTHJUIVCDPNHPUPLDELBEEWBMJEBUJPO ࠓڍ͛ͨ؆୯ͳαϯϓϧίʔυ͕ࡌͤͯ͋Γ·͢ɻ
5IBOL:PV LHPUP าͷςοΫ