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

Argo CD Notifications don't work properly with AWS SQS fifo queue #342

Open
zahidzia opened this issue Oct 14, 2024 · 0 comments
Open

Argo CD Notifications don't work properly with AWS SQS fifo queue #342

zahidzia opened this issue Oct 14, 2024 · 0 comments

Comments

@zahidzia
Copy link

I was trying to implement argo cd notifications to send messages on an AWS SQS fifo queue and it doesn't seem to work. In the notification controller log, I see the following error:

time="yyy-dd-mm" level=error msg="Got an error sending the message: operation error SQS: SendMessage, https response error StatusCode: 400, RequestID: xxxxx-xxxx-xxxxx-xxxxx, api error MissingParameter: The request must contain the parameter MessageGroupId."

And when I look at the documentation it seems like it should work if you provide the messageGrouplId in the template as follows

template.deployment-ready: |
  message: |
    Deployment {{.obj.metadata.name}} is ready!
  messageGroupId: {{.obj.metadata.name}}-deployment

but when I look at the code, from the structure of classes used for unmarshalling YAML, it seems like it is expecting the template to be something like this

template.deployment-ready: |
  message: |
    Deployment {{.obj.metadata.name}} is ready!
  awssqs:
    messageGroupId: {{.obj.metadata.name}}-deployment

Documentation being wrong is one problem, but even if I provide the messageGroupId and I see that it is parsed properly when I test it with argocd admin notifications template notify command.

But still when I try to trigger the notification I again get the error and the reason for this could be the code here. Because it seems the MessageGroupId is not added to the request at all in the function sendMessageInput.

I am not too fluent in Go otherwise I would have created the pull request. Would be nice if someone could review the code and make the necessary changes.

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

No branches or pull requests

1 participant