GitHub¶
Parameters¶
The GitHub notification service changes commit status using GitHub Apps and requires specifying the following settings:
appID- the app idinstallationID- the app installation idprivateKey- the app private keyenterpriseBaseURL- optional URL, e.g. https://git.example.com/
Configuration¶
- Create a GitHub Apps using https://github.com/settings/apps/new
- Change repository permissions to enable write commit statuses

- Generate a private key, and download it automatically

- Install app to account
- Store privateKey in
argocd-notifications-secretSecret and configure GitHub integration inargocd-notifications-cmConfigMap
apiVersion: v1
kind: ConfigMap
metadata:
name: <config-map-name>
data:
service.github: |
appID: <app-id>
installationID: <installation-id>
privateKey: $github-privateKey
apiVersion: v1
kind: Secret
metadata:
name: <secret-name>
stringData:
github-privateKey: |
-----BEGIN RSA PRIVATE KEY-----
(snip)
-----END RSA PRIVATE KEY-----
- Create subscription for your GitHub integration
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
annotations:
notifications.argoproj.io/subscribe.<trigger-name>.github: ""
Templates¶

If the message is set to 140 characters or more, it will be truncate.
template.app-deployed: |
message: |
Application {{.app.metadata.name}} is now running new version of deployments manifests.
github:
status:
state: success
label: "continuous-delivery/{{.app.metadata.name}}"
targetURL: "{{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true"