feat(core): configure SNS topics to receive stack events on the Stack construct#30551
feat(core): configure SNS topics to receive stack events on the Stack construct#30551mergify[bot] merged 59 commits intomainfrom
Conversation
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.
A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed add Clarification Request to a comment.
✅ Updated pull request passes all PRLinter validations. Dismissing previous PRLinter review.
scanlonp
left a comment
There was a problem hiding this comment.
Looks solid. Couple clarifying questions so I can get a better sense of a few parts of the PR.
Other than the individual comments, main question would be about the notificationArns being put into the toolkit in some tests. From a user perspective, these options are added on the stack. Are the toolkit Arns a product of the cli option?
packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts
Outdated
Show resolved
Hide resolved
packages/@aws-cdk-testing/cli-integ/tests/cli-integ-tests/cli.integtest.ts
Outdated
Show resolved
Hide resolved
| sdkProvider: cloudExecutable.sdkProvider, | ||
| deployments: new FakeCloudFormation({ | ||
| 'Test-Stack-A': { Foo: 'Bar' }, | ||
| }, notificationArns), |
There was a problem hiding this comment.
Why are the arns being passed into the toolkit?
There was a problem hiding this comment.
I forgot why I did this initially, but now I see; these are not passed to the toolkit, they're part of the FakeCloudFormation. FakeCloudFormation will assert that the notification arns it uses are passed from the executable.
The test doesn't create an executable with the notification arns directly; instead, the Test-Stack-Notification-Arns is the thing in the executable that defines it.
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.
A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed add Clarification Request to a comment.
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.
A comment requesting an exemption should contain the text Exemption Request. Additionally, if clarification is needed add Clarification Request to a comment.
|
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). |
|
➡️ PR build request submitted to A maintainer must now check the pipeline and add the |
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). |
|
Comments on closed issues and PRs are hard for our team to see. |
|
You guys, we cannot take changes to Cloud Assembly Schema in this repo any longer. Reverting this. |
Issue # (if applicable)
#8581.
Reason for this change
It is easier and clearer to specify the SNS Topic ARNs on the stack construct itself instead of passing it as a command line argument.
Description of changes
Added a new optional stack prop,
notificationArns, that is written to the CloudAssembly and concatenated with the CLI option--notification-arns.When I added CLI integ tests, I discovered that the existing framework is unable to use your local code. It always retrieves the latest release, which is not what you want when running it locally. This fixes that.
Don't forget to select stacks by hierarchical ID (currently display name, in our tests) when writing certain test code. Otherwise, the tests may not select the stack you expected.
Description of how you validated changes
Unit tests + CLI integ test.
Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license