AWS CDKコマンドについて試行錯誤したことメモ
cdk bootstrapコマンド
cdk bootstrap
このコマンドは、cdk initでプロジェクトを作成した直後に実行するやつです。
Deploying AWS CDK apps into an AWS environment (a combination of an AWS account and region) may require that you provision resources the AWS CDK needs to perform the deployment. These resources include an Amazon S3 bucket for storing files and IAM roles that grant permissions needed to perform deployments. The process of provisioning these initial resources is called bootstrapping.
引用:AWS Cloud Development Kit (CDK)Developer Guide
要は、AWS CDKアプリをAWS環境(AWSアカウントとリージョンの組み合わせ)にデプロイするために必要なリソース(S3バケットやIAMロール)を用意するプロセスをブートストラップというらしいです。
それで、cdk bootstrapコマンドで作成されたS3バケットってどれよって話なのですが、CDK-Toolkitってやつですね。
こいつとCloudformationのCDKToolkit云々ってやつはbootstrapコマンドで作られたものなので触らない方が吉っぽいです。
cdk bootstrapコマンドはこっそりcdk deployコマンドと同じようにCloudformationスタック作ってS3をデプロイしちゃうみたいですね。
cdk synthコマンド
そうそう、Cloudformationのテンプレート(yaml)を標準出力で出してくれるのがcdk synthコマンドです。
yamlとしておかしかったらエラー吐いてくれるのでdeployの前にやっておくといい感じですね。
このコマンド打ったからってCloudformationにスタックができるとかそういうことは特になかったです。ローカルで確認するためのコマンドなのかな?
cdk deployコマンド
Cloudformationにスタックを作って実際にAWS環境にリソースをデプロイするコマンド。
環境を分けられるようにするために、-c オプションで環境プレフィックスを受け取ってスタックのidを分けられるようにしておくといいですね。
cdk deploy -c target=dev
参考:AWS CDKのContextを切り分けて1つのソースから3ランドスケープを作る
ちなみに、AWS IoT CoreのIoTポリシーとかみたいに、一回作ったら消さないとエラーが出たりするものもあったりします。
CloudFormation cannot update a stack when a custom-named resource requires replacing.Rename 'MYResourceXXX' and update the stack again.
https://aws.amazon.com/jp/premiumsupport/knowledge-center/cloudformation-custom-name/
https://seed.run/docs/serverless-errors/cloudformation-cannot-update-a-stack-when-a-custom-named-resource-requires-replacing.html
これなんですけど、Lambdaのメモリを増やすだとか、そういった更新だけだったら出ないエラーなんですが、AWSリソースを作り直す必要があるものはこのエラーから逃れられないような気がします。
Author And Source
この問題について(AWS CDKコマンドについて試行錯誤したことメモ), 我々は、より多くの情報をここで見つけました https://qiita.com/kazuma_sawatari/items/0588a33ae0fdd48d1ab2著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .