とりあえず
$ localstack start -d
で LocalStack を起動して、CDK 用の “tmp S3 bucket” 的なものを用意するために bootstrap を実行する。
$ cdklocal bootstrap ⏳ Bootstrapping environment aws://000000000000/us-east-1... Trusted accounts for deployment: (none) Trusted accounts for lookup: (none) ... ❌ Environment aws://000000000000/us-east-1 failed bootstrapping: Error: The stack named CDKToolkit failed to deploy: CREATE_FAILED (Deployment failed) ... The stack named CDKToolkit failed to deploy: CREATE_FAILED (Deployment failed)
あれ?
latest cdklocal/localstack fails to bootstrap · Issue #36 · localstack/aws-cdk-local · GitHub を見ると、わりと以前から色々なバージョン衝突で発生していそう・・・。amazon web services - Running CDK bootstrap against LocalStack fails with credentials error - Stack Overflow というパターンもあるようだ。
$ pip list | grep localstack localstack 0.14.0 localstack-client 1.31 localstack-ext 0.14.0 localstack-plugin-loader 1.1.1
$ npm list -g /home/xxx/.nvm/versions/node/v16.13.2/lib ├── aws-cdk-local@2.14.0 ├── aws-cdk@2.15.0 ├── corepack@0.10.0 ├── nodemon@2.0.15 └── npm@8.5.3
どれかまずい組み合わせがあるのだろうか・・・。
$ cdklocal bootstrap -v
でより情報を出しつつ確認するが、どうも does cdk-local support cdk 2.3.0? · Issue #55 · localstack/aws-cdk-local · GitHub と同じみたいだ・・・。暫くかかるかな・・・。
$ cdklocal deploy
と
$ cdklocal destroy
はいけた。bootstrap の S3 bucket を使わないケースならいけるかもしれない。このまま気にせずにいけるところまでいこう。
とりあえず忘れないうちに VS Code に AWS Toolkit を入れておく。
$ ls -l ~/.vscode-server/extensions/
AWS CDKをlocalstackで練習する では bootstrap が通っているようなのでこのバージョンで試すのもありな気がする。
ひょっとしたら Error: The stack named CDKToolkit failed to deploy: CREATE_FAILED (Deployment failed) · Issue #57 · localstack/aws-cdk-local · GitHub にあるように ECR 関連かもしれない。