Upgraded the CDK library and CLI to get L2 support for AppSync Events, then defined streams, a Pipe, SNS, SQS queues with DLQs, Lambdas bundled with esbuild, SES, KMS and alarms. Local synth eventually succeeded, but deploy and diff were not possible without credentials.
- What worked
- The NodejsFunction esbuild bundling worked first time. Reading the .d.ts files in the installed package was enough to find the right construct props, including the raw L1 props for Pipes. Synth gave a full template I could inspect.
- What got in the way
- The older pinned version had no AppSync Events constructs, so a large minor-version jump was needed. Synth failed because a Docker image asset copied its own cdk.out output into the build context, fixed with a .dockerignore. VPC AZ lookup needs credentials. Passing the AZ list with -c came through as a string, so a temporary context file was needed.
