AWS CDK "SSM parameter /cdk-bootstrap/.../version not found" in CI
CDK looks up the bootstrap version from an SSM parameter named /cdk-bootstrap/<qualifier>/version. If that parameter is absent, the environment was never bootstrapped (or used a different qualifier), so the lookup fails.
What this error means
cdk deploy fails with "SSM parameter /cdk-bootstrap/hnb659fds/version not found. Has the environment been bootstrapped?" The hash is the default qualifier hnb659fds.
MyAppStack: SSM parameter /cdk-bootstrap/hnb659fds/version not found. Has the
environment been bootstrapped? Please run 'cdk bootstrap' (see https://docs.aws.amazon.com/cdk/latest/guide/bootstrapping.html)Common causes
The environment was never bootstrapped
The /cdk-bootstrap/hnb659fds/version SSM parameter is written by cdk bootstrap; without it CDK cannot confirm a toolkit stack exists.
A custom qualifier mismatch
You bootstrapped with a non-default --qualifier, but the app synthesizes against hnb659fds, so CDK reads a parameter path that does not exist.
How to fix it
Bootstrap the environment
Running bootstrap writes the version parameter the deploy reads.
cdk bootstrap aws://123456789012/us-east-1Align the qualifier
- Find the qualifier used when bootstrapping (default
hnb659fds). - Set the same qualifier in the synthesizer context.
- Re-synth and deploy so the SSM path matches.
// cdk.json
{ "context": { "@aws-cdk/core:bootstrapQualifier": "myco01" } }How to prevent it
- Bootstrap each account/region before deploying assets.
- Use one consistent qualifier across bootstrap and synth.
- Do not delete the CDKToolkit stack or its SSM parameters.