Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MICRO-196: Slack Alerts #1070

Merged
merged 2 commits into from
Sep 17, 2023

Conversation

AdamJHall
Copy link
Contributor


Description of the proposed changes
This PR Adds the notificationArn prop to the GraphQL Mesh construct. Whenever this prop is provided with a valid SNS topic ARN it will forward all SNS notifications it receives for codepipeline executions to that topic.

Other solutions considered (if any)
Initially I was planning on using Codestar notification rules to send to an SNS topic and then subscribe AWS Chatbot to that SNS topic. However AWS Chatbot requires you then request access to slack for each AWS account and it grants itself access to ALL public channels. So anyone with access to AWS would then be able to see the entire Aligent channel list.

After that I attempted to setup the SNS topic in the Aligent AWS account and then just send the notification from the client account to our Aligent account. While most of the docs seem to imply this is possible, you end up just getting Invalid Request in cloudformation. I attempted to set it up manually via the CLI just to test and got the real error message of “SNS topic must be in the same account as the notification rule“.

Next attempt was to have Chatbot subscribe to an SNS topic in the client account, but that doesn’t work either as Chatbot can only subscribe to topics in it’s own account.

So AWS didn’t seem to like me just piping cloudwatch events to the SNS topic so I’m having to setup a notification rule as well.

So we end up with Notification Rule → SNS → Lambda → SNS → Chatbot.

Notes to PR author

⚠️ Please make sure the changes adhere to the guidelines mentioned here

Notes to reviewers

🛈 When you've finished leaving feedback, please add a final comment to the PR tagging the author, letting them know that you have finished leaving feedback

Create a cross account supported way of sending slack notifications whenever GraphQl mesh is deployed
@AdamJHall AdamJHall merged commit 1906669 into feature/DO-1285-upgrade-cdk Sep 17, 2023
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants