fix(cli): synthesis stops on expired AWS credentials#22861
fix(cli): synthesis stops on expired AWS credentials#22861mergify[bot] merged 2 commits intomainfrom
Conversation
#21052 tried to fix the situation where we would keep on doing retries if AWS credentials were expired. However, this is now failing too hard for people that commonly have expired credentials in their environment but still want to have `cdk synth` complete successfully. Catch and swallow the error (but do complain with a warning) if we encounter an `ExpiredToken` during the `defaultAccount` operation. That's the only place where it's used, and the only place where the value is optional -- it behaves the same as if no credentials were configured. Also in this PR: add some TypeScript decorators to trace through a bunch of async method calls to come up with a reasonable trace of where errors originate. Not complete, not intended to be. But it is a nice basis for debugging SDK call behavior, and can be used more in the future.
aws-cdk-automation
left a comment
There was a problem hiding this comment.
The pull request linter has failed. See the aws-cdk-automation comment below for failure reasons. If you believe this pull request should receive an exemption, please comment and provide a justification.
✅ Updated pull request passes all PRLinter validations. Dissmissing previous PRLinter review.
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
AWS CodeBuild CI Report
Powered by github-codebuild-logs, available on the AWS Serverless Application Repository |
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
#21052 tried to fix the situation where we would keep on doing retries if AWS credentials were expired.
However, this is now failing too hard for people that commonly have expired credentials in their environment but still want to have
cdk synthcomplete successfully.Catch and swallow the error (but do complain with a warning) if we encounter an
ExpiredTokenduring thedefaultAccountoperation. That's the only place where it's used, and the only place where the value is optional -- it behaves the same as if no credentials were configured.Also in this PR: add some TypeScript decorators to trace through a bunch of async method calls to come up with a reasonable trace of where errors originate. Not complete, not intended to be. But it is a nice basis for debugging SDK call behavior, and can be used more in the future.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license