Files
RaghaviandGitHub 5111f7fed5 fix: Correction in Rocket.chat documentation (#18498)
* Replaced email to SAMAccountName

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Replaced email to SAMAccountName

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Updated go.mod

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Revert "Updated go.mod"

This reverts commit a6466530041cb541fca020024c77047dcfed2ba5.

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Updated go.mod

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

* Fixed failing CI

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>

---------

Signed-off-by: Raghavi Shirur <[email protected]>
Signed-off-by: Raghavi Shirur <[email protected]>
2024-06-13 12:58:01 -04:00

3.0 KiB
Executable File

Rocket.Chat

Parameters

The Rocket.Chat notification service configuration includes following settings:

  • email - the Rocker.Chat user's SAMAccountName
  • password - the Rocker.Chat user's password
  • alias - optional alias that should be used to post message
  • icon - optional message icon
  • avatar - optional message avatar
  • serverUrl - optional Rocket.Chat server url

Configuration

  1. Login to your RocketChat instance
  2. Go to user management

2

  1. Add new user with bot role. Also note that Require password change checkbox mus be not checked

3

  1. Copy username and password that you was created for bot user
  2. Create a public or private channel, or a team, for this example my_channel
  3. Add your bot to this channel otherwise it won't work
  4. Store email and password in argocd-notifications-secret Secret
apiVersion: v1
kind: Secret
metadata:
  name: <secret-name>
stringData:
  rocketchat-email: <email>
  rocketchat-password: <password>
  1. Finally, use these credentials to configure the RocketChat integration in the argocd-configmap config map:
apiVersion: v1
kind: ConfigMap
metadata:
  name: argocd-notifications-cm
data:
  service.rocketchat: |
    email: $rocketchat-email
    password: $rocketchat-password
  1. Create a subscription for your Rocket.Chat integration:

Note: channel, team or user must be prefixed with # or @ elsewhere we will be interpretative destination as a room ID

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  annotations:
    notifications.argoproj.io/subscribe.on-sync-succeeded.rocketchat: #my_channel

Templates

Notification templates can be customized with RocketChat attachments.

Note: Attachments structure in Rocketchat is same with Slack attachments feature.

The message attachments can be specified in attachments string fields under rocketchat field:

template.app-sync-status: |
  message: |
    Application {{.app.metadata.name}} sync is {{.app.status.sync.status}}.
    Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.
  rocketchat:
    attachments: |
      [{
        "title": "{{.app.metadata.name}}",
        "title_link": "{{.context.argocdUrl}}/applications/{{.app.metadata.name}}",
        "color": "#18be52",
        "fields": [{
          "title": "Sync Status",
          "value": "{{.app.status.sync.status}}",
          "short": true
        }, {
          "title": "Repository",
          "value": "{{.app.spec.source.repoURL}}",
          "short": true
        }]
      }]