Skip to content

fix(apigateway): race condition between Stage and CfnAccount#18011

Merged
mergify[bot] merged 7 commits intomasterfrom
otaviom/stage-depends-on-cwaccount
Dec 15, 2021
Merged

fix(apigateway): race condition between Stage and CfnAccount#18011
mergify[bot] merged 7 commits intomasterfrom
otaviom/stage-depends-on-cwaccount

Conversation

@otaviomacedo
Copy link
Copy Markdown
Contributor

When cloudWatchRole is enabled, a CfnAccount is created for it. Since there is no explicit dependency between the the stages and the account, CloudFormation may deploy them in the wrong order, causing the deployment to fail.

Add an explicit dependency between Stages (whether defined by the user or created automatically) and the CloudWatch CfnAccount, if it exists.

Fixes #10722.


By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license

@otaviomacedo otaviomacedo requested a review from a team December 14, 2021 15:19
@gitpod-io
Copy link
Copy Markdown

gitpod-io bot commented Dec 14, 2021

@github-actions github-actions bot added the @aws-cdk/aws-apigateway Related to Amazon API Gateway label Dec 14, 2021
@mergify mergify bot added the contribution/core This is a PR that came from AWS. label Dec 14, 2021
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Dec 15, 2021

Thank you for contributing! Your pull request will be updated from master and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork).

@aws-cdk-automation
Copy link
Copy Markdown
Collaborator

AWS CodeBuild CI Report

  • CodeBuild project: AutoBuildProject89A8053A-LhjRyN9kxr8o
  • Commit ID: 0f56919
  • Result: SUCCEEDED
  • Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

@mergify mergify bot merged commit f11766e into master Dec 15, 2021
@mergify mergify bot deleted the otaviom/stage-depends-on-cwaccount branch December 15, 2021 21:55
@mergify
Copy link
Copy Markdown
Contributor

mergify bot commented Dec 15, 2021

Thank you for contributing! Your pull request will be updated from master and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork).

akash1810 added a commit to guardian/cdk that referenced this pull request Dec 22, 2021
This brings in two fixes which is reflected in the snapshot changes.

See:
  - aws/aws-cdk#17984
  - aws/aws-cdk#18011

BREAKING CHANGE: Update aws-cdk libraries to 1.137.0
akash1810 added a commit to guardian/cdk that referenced this pull request Dec 23, 2021
This brings in two fixes which is reflected in the snapshot changes.

See:
  - aws/aws-cdk#17984
  - aws/aws-cdk#18011

BREAKING CHANGE: Update aws-cdk libraries to 1.137.0
TikiTDO pushed a commit to TikiTDO/aws-cdk that referenced this pull request Feb 21, 2022
When `cloudWatchRole` is enabled, a `CfnAccount` is created for it. Since there is no explicit dependency between the the stages and the account, CloudFormation may deploy them in the wrong order, causing the deployment to fail.

Add an explicit dependency between `Stage`s (whether defined by the user or created automatically) and the CloudWatch `CfnAccount`, if it exists.

Fixes aws#10722.

----

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
mergify bot pushed a commit that referenced this pull request Oct 28, 2022
…n specrestapi (#22671)

This PR is based off of #18011, which fixed a race condition between RestApi stages and CloudWatch roles. The mentioned PR fixed the issue for RestApi, but not SpecRestApi, which this PR aims to fix. 

The fix was largely implemented in RestApiBase. Since SpecRestApi inherits the same RestApiBase as RestApi, all we need to do is swap the order of resource creation so that the CloudWatch role is created before the RestApi stage, and can be attached correctly. 

This PR also updates the integration tests to reflect the new dependency RestApi stage has on RestApi account. 

Fixes #18925

### All Submissions:

* [x] Have you followed the guidelines in our [Contributing guide?](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md)

*By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

@aws-cdk/aws-apigateway Related to Amazon API Gateway contribution/core This is a PR that came from AWS.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[apigateway] race condition between Stage and CfnAccount

3 participants