/ #cdk #python 

【CDK/Python】必要最低限のファイルでcdk synthする

もくじ

CDKでインフラを開発しているときに、あれ、これどんなテンプレート作られるんだっけ?とかさっと確認したいけど、 直近開発中のコードは何やらエラーが出ててテンプレート確認できない!!とかそんなシチュエーションまれにありますよね!!

(あるのかな。。。?とりあえず私はたまにあります。「あれ、、このSecurityGroupどんな権限でできるんだっけ?」的なのが・・・。)

そんなときにcdk init!!のコマンドを叩いて適当なStackを作ってテンプレートを出力させて、、、的なのは嫌ですね。

そんなときに向けて最小のファイルでcdk synthするにはどうすればいいのかな?というのを書いてみます。

結論

下記のファイル1つあれば動きます(笑)

import aws_cdk as cdk

app = cdk.App()
stack = cdk.Stack(app, "test")

# ここに必要なリソース書く

app.synth()

これに対してcdkでappの実行方法をオプションでわたして上げるとテンプレートが無事に吐き出されます

cdk -a "python3 app.py" synth

ちなみに上記のStackは中身が空っぽです。

例でS3のバケットを1つデプロイするStackはこんな感じです!

import aws_cdk as cdk
from aws_cdk.aws_s3 import Bucket

app = cdk.App()
stack = cdk.Stack(app, "test")

Bucket(stack, "TestBucket")

app.synth()

お手軽ですねー!

これでテンプレートをささっと確認したいときcdk initとか叩かずにすむので楽ができるはずーです!

ということで今回の以上でしたー!読んでくださってありがとうございましたー!

今回のリポジトリはこちら

https://github.com/sisi100/cdk-minimum

Author

Sisii

AWSが好きなフリーランスのエンジニア。主にAWSを使ったバックエンドの開発をしています😊最近Frontも始めました