454 lines
15 KiB
YAML
454 lines
15 KiB
YAML
# -- Assign custom [affinity] rules
|
|
affinity: {}
|
|
|
|
# -- ArgoCD dashboard url; used in place of {{.context.argocdUrl}} in templates
|
|
argocdUrl:
|
|
|
|
# -- String to partially override "argocd-notifications.fullname" template
|
|
fullnameOverride: ""
|
|
|
|
image:
|
|
# -- Repository to use for the controller
|
|
repository: argoprojlabs/argocd-notifications
|
|
# -- Overrides the image tag whose default is the chart appVersion
|
|
tag: ""
|
|
# -- Image pull policy for the controller
|
|
pullPolicy: IfNotPresent
|
|
|
|
# -- Secrets with credentials to pull images from a private registry
|
|
imagePullSecrets: []
|
|
|
|
# -- String to partially override "argocd-notifications.fullname" template
|
|
nameOverride: "argocd-notifications"
|
|
|
|
# -- [Node selector]
|
|
nodeSelector: {}
|
|
|
|
# -- The deployment strategy to use to replace existing pods with new ones
|
|
updateStrategy:
|
|
type: Recreate
|
|
|
|
# -- Define user-defined context
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/templates/#defining-user-defined-context
|
|
context: {}
|
|
# region: east
|
|
# environmentName: staging
|
|
|
|
secret:
|
|
# -- Whether helm chart creates controller secret
|
|
create: true
|
|
|
|
# -- key:value pairs of annotations to be added to the secret
|
|
annotations: {}
|
|
|
|
# -- The name of the secret to use.
|
|
## If not set and create is true, the default name 'argocd-notifications-secret' is used
|
|
name: ""
|
|
|
|
# -- Generic key:value pairs to be inserted into the secret
|
|
## Can be used for templates, notification services etc. Some examples given below.
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/services/overview/
|
|
items: {}
|
|
# slack-token:
|
|
# # For more information: https://argocd-notifications.readthedocs.io/en/stable/services/slack/
|
|
|
|
# grafana-apiKey:
|
|
# # For more information: https://argocd-notifications.readthedocs.io/en/stable/services/grafana/
|
|
|
|
# webhooks-github-token:
|
|
|
|
# email-username:
|
|
# email-password:
|
|
# For more information: https://argocd-notifications.readthedocs.io/en/stable/services/email/
|
|
|
|
# -- Set the logging level. (One of: `debug`, `info`, `warn`, `error`)
|
|
logLevel: info
|
|
|
|
# -- Extra arguments to provide to the controller
|
|
extraArgs: []
|
|
|
|
metrics:
|
|
# -- Enables prometheus metrics server
|
|
enabled: false
|
|
# -- Metrics port
|
|
port: 9001
|
|
service:
|
|
# -- Metrics service annotations
|
|
annotations: {}
|
|
# -- Metrics service labels
|
|
labels: {}
|
|
serviceMonitor:
|
|
# -- Enable a prometheus ServiceMonitor
|
|
enabled: false
|
|
# -- Prometheus ServiceMonitor labels
|
|
additionalLabels: {}
|
|
# namespace: monitoring
|
|
# interval: 30s
|
|
# scrapeTimeout: 10s
|
|
|
|
# -- Additional container environment variables
|
|
extraEnv: []
|
|
|
|
# -- Configures notification services
|
|
# @default -- See [values.yaml]
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/services/overview/
|
|
notifiers:
|
|
service.slack: |
|
|
token: $slack-token
|
|
|
|
# -- Annotations to be applied to the controller Pods
|
|
podAnnotations: {}
|
|
|
|
# -- Labels to be applied to the controller Pods
|
|
podLabels: {}
|
|
|
|
# -- Pod Security Context
|
|
securityContext:
|
|
runAsNonRoot: true
|
|
|
|
# -- Container Security Context
|
|
containerSecurityContext: {}
|
|
|
|
# -- Resource limits and requests for the controller
|
|
resources: {}
|
|
# limits:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
# requests:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
|
|
serviceAccount:
|
|
# -- Specifies whether a service account should be created
|
|
create: true
|
|
|
|
# -- The name of the service account to use.
|
|
## If not set and create is true, a name is generated using the fullname template
|
|
name: argocd-notifications-controller
|
|
|
|
# -- Annotations applied to created service account
|
|
annotations: {}
|
|
|
|
cm:
|
|
# -- Whether helm chart creates controller config map
|
|
create: true
|
|
|
|
# -- The name of the config map to use.
|
|
## If not set and create is true, the default name 'argocd-notifications-cm' is used
|
|
name: ""
|
|
|
|
# -- Contains centrally managed global application subscriptions
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/subscriptions/
|
|
subscriptions: {}
|
|
# # subscription for on-sync-status-unknown trigger notifications
|
|
# - recipients:
|
|
# - slack:test2
|
|
# - email:test@gmail.com
|
|
# triggers:
|
|
# - on-sync-status-unknown
|
|
# # subscription restricted to applications with matching labels only
|
|
# - recipients:
|
|
# - slack:test3
|
|
# selector: test=true
|
|
# triggers:
|
|
# - on-sync-status-unknown
|
|
|
|
# -- The notification template is used to generate the notification content
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/templates/
|
|
templates: {}
|
|
# template.app-deployed: |
|
|
# email:
|
|
# subject: New version of an application {{.app.metadata.name}} is up and running.
|
|
# message: |
|
|
# {{if eq .serviceType "slack"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} is now running new version of deployments manifests.
|
|
# slack:
|
|
# 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
|
|
# },
|
|
# {
|
|
# "title": "Revision",
|
|
# "value": "{{.app.status.sync.revision}}",
|
|
# "short": true
|
|
# }
|
|
# {{range $index, $c := .app.status.conditions}}
|
|
# {{if not $index}},{{end}}
|
|
# {{if $index}},{{end}}
|
|
# {
|
|
# "title": "{{$c.type}}",
|
|
# "value": "{{$c.message}}",
|
|
# "short": true
|
|
# }
|
|
# {{end}}
|
|
# ]
|
|
# }]
|
|
# template.app-health-degraded: |
|
|
# email:
|
|
# subject: Application {{.app.metadata.name}} has degraded.
|
|
# message: |
|
|
# {{if eq .serviceType "slack"}}:exclamation:{{end}} Application {{.app.metadata.name}} has degraded.
|
|
# Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.
|
|
# slack:
|
|
# attachments: |-
|
|
# [{
|
|
# "title": "{{ .app.metadata.name}}",
|
|
# "title_link": "{{.context.argocdUrl}}/applications/{{.app.metadata.name}}",
|
|
# "color": "#f4c030",
|
|
# "fields": [
|
|
# {
|
|
# "title": "Sync Status",
|
|
# "value": "{{.app.status.sync.status}}",
|
|
# "short": true
|
|
# },
|
|
# {
|
|
# "title": "Repository",
|
|
# "value": "{{.app.spec.source.repoURL}}",
|
|
# "short": true
|
|
# }
|
|
# {{range $index, $c := .app.status.conditions}}
|
|
# {{if not $index}},{{end}}
|
|
# {{if $index}},{{end}}
|
|
# {
|
|
# "title": "{{$c.type}}",
|
|
# "value": "{{$c.message}}",
|
|
# "short": true
|
|
# }
|
|
# {{end}}
|
|
# ]
|
|
# }]
|
|
# template.app-sync-failed: |
|
|
# email:
|
|
# subject: Failed to sync application {{.app.metadata.name}}.
|
|
# message: |
|
|
# {{if eq .serviceType "slack"}}:exclamation:{{end}} The sync operation of application {{.app.metadata.name}} has failed at {{.app.status.operationState.finishedAt}} with the following error: {{.app.status.operationState.message}}
|
|
# Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .
|
|
# slack:
|
|
# attachments: |-
|
|
# [{
|
|
# "title": "{{ .app.metadata.name}}",
|
|
# "title_link":"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}",
|
|
# "color": "#E96D76",
|
|
# "fields": [
|
|
# {
|
|
# "title": "Sync Status",
|
|
# "value": "{{.app.status.sync.status}}",
|
|
# "short": true
|
|
# },
|
|
# {
|
|
# "title": "Repository",
|
|
# "value": "{{.app.spec.source.repoURL}}",
|
|
# "short": true
|
|
# }
|
|
# {{range $index, $c := .app.status.conditions}}
|
|
# {{if not $index}},{{end}}
|
|
# {{if $index}},{{end}}
|
|
# {
|
|
# "title": "{{$c.type}}",
|
|
# "value": "{{$c.message}}",
|
|
# "short": true
|
|
# }
|
|
# {{end}}
|
|
# ]
|
|
# }]
|
|
# template.app-sync-running: |
|
|
# email:
|
|
# subject: Start syncing application {{.app.metadata.name}}.
|
|
# message: |
|
|
# The sync operation of application {{.app.metadata.name}} has started at {{.app.status.operationState.startedAt}}.
|
|
# Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .
|
|
# slack:
|
|
# attachments: |-
|
|
# [{
|
|
# "title": "{{ .app.metadata.name}}",
|
|
# "title_link":"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}",
|
|
# "color": "#0DADEA",
|
|
# "fields": [
|
|
# {
|
|
# "title": "Sync Status",
|
|
# "value": "{{.app.status.sync.status}}",
|
|
# "short": true
|
|
# },
|
|
# {
|
|
# "title": "Repository",
|
|
# "value": "{{.app.spec.source.repoURL}}",
|
|
# "short": true
|
|
# }
|
|
# {{range $index, $c := .app.status.conditions}}
|
|
# {{if not $index}},{{end}}
|
|
# {{if $index}},{{end}}
|
|
# {
|
|
# "title": "{{$c.type}}",
|
|
# "value": "{{$c.message}}",
|
|
# "short": true
|
|
# }
|
|
# {{end}}
|
|
# ]
|
|
# }]
|
|
# template.app-sync-status-unknown: |
|
|
# email:
|
|
# subject: Application {{.app.metadata.name}} sync status is 'Unknown'
|
|
# message: |
|
|
# {{if eq .serviceType "slack"}}:exclamation:{{end}} Application {{.app.metadata.name}} sync is 'Unknown'.
|
|
# Application details: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}.
|
|
# {{if ne .serviceType "slack"}}
|
|
# {{range $c := .app.status.conditions}}
|
|
# * {{$c.message}}
|
|
# {{end}}
|
|
# {{end}}
|
|
# slack:
|
|
# attachments: |-
|
|
# [{
|
|
# "title": "{{ .app.metadata.name}}",
|
|
# "title_link":"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}",
|
|
# "color": "#E96D76",
|
|
# "fields": [
|
|
# {
|
|
# "title": "Sync Status",
|
|
# "value": "{{.app.status.sync.status}}",
|
|
# "short": true
|
|
# },
|
|
# {
|
|
# "title": "Repository",
|
|
# "value": "{{.app.spec.source.repoURL}}",
|
|
# "short": true
|
|
# }
|
|
# {{range $index, $c := .app.status.conditions}}
|
|
# {{if not $index}},{{end}}
|
|
# {{if $index}},{{end}}
|
|
# {
|
|
# "title": "{{$c.type}}",
|
|
# "value": "{{$c.message}}",
|
|
# "short": true
|
|
# }
|
|
# {{end}}
|
|
# ]
|
|
# }]
|
|
# template.app-sync-succeeded: |
|
|
# email:
|
|
# subject: Application {{.app.metadata.name}} has been successfully synced.
|
|
# message: |
|
|
# {{if eq .serviceType "slack"}}:white_check_mark:{{end}} Application {{.app.metadata.name}} has been successfully synced at {{.app.status.operationState.finishedAt}}.
|
|
# Sync operation details are available at: {{.context.argocdUrl}}/applications/{{.app.metadata.name}}?operation=true .
|
|
# slack:
|
|
# attachments: "[{\n \"title\": \"{{ .app.metadata.name}}\",\n \"title_link\":\"{{.context.argocdUrl}}/applications/{{.app.metadata.name}}\",\n \"color\": \"#18be52\",\n \"fields\": [\n {\n \"title\": \"Sync Status\",\n \"value\": \"{{.app.status.sync.status}}\",\n \"short\": true\n },\n {\n \"title\": \"Repository\",\n \"value\": \"{{.app.spec.source.repoURL}}\",\n \"short\": true\n }\n {{range $index, $c := .app.status.conditions}}\n {{if not $index}},{{end}}\n {{if $index}},{{end}}\n {\n \"title\": \"{{$c.type}}\",\n \"value\": \"{{$c.message}}\",\n \"short\": true\n }\n {{end}}\n ]\n}] "
|
|
|
|
# -- [Tolerations] for use with node taints
|
|
tolerations: []
|
|
|
|
# -- The trigger defines the condition when the notification should be sent
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/triggers/
|
|
triggers: {}
|
|
# trigger.on-deployed: |
|
|
# - description: Application is synced and healthy. Triggered once per commit.
|
|
# oncePer: app.status.sync.revision
|
|
# send:
|
|
# - app-deployed
|
|
# when: app.status.operationState.phase in ['Succeeded'] and app.status.health.status == 'Healthy'
|
|
# trigger.on-health-degraded: |
|
|
# - description: Application has degraded
|
|
# send:
|
|
# - app-health-degraded
|
|
# when: app.status.health.status == 'Degraded'
|
|
# trigger.on-sync-failed: |
|
|
# - description: Application syncing has failed
|
|
# send:
|
|
# - app-sync-failed
|
|
# when: app.status.operationState.phase in ['Error', 'Failed']
|
|
# trigger.on-sync-running: |
|
|
# - description: Application is being synced
|
|
# send:
|
|
# - app-sync-running
|
|
# when: app.status.operationState.phase in ['Running']
|
|
# trigger.on-sync-status-unknown: |
|
|
# - description: Application status is 'Unknown'
|
|
# send:
|
|
# - app-sync-status-unknown
|
|
# when: app.status.sync.status == 'Unknown'
|
|
# trigger.on-sync-succeeded: |
|
|
# - description: Application syncing has succeeded
|
|
# send:
|
|
# - app-sync-succeeded
|
|
# when: app.status.operationState.phase in ['Succeeded']
|
|
#
|
|
# For more information: https://argocd-notifications.readthedocs.io/en/stable/triggers/#default-triggers
|
|
# defaultTriggers: |
|
|
# - on-sync-status-unknown
|
|
|
|
## The optional bot component simplifies managing subscriptions
|
|
## For more information: https://argocd-notifications.readthedocs.io/en/stable/bots/overview/
|
|
bots:
|
|
slack:
|
|
# -- Enable slack bot
|
|
## You have to set secret.notifiers.slack.signingSecret
|
|
enabled: false
|
|
|
|
# -- The deployment strategy to use to replace existing pods with new ones
|
|
updateStrategy:
|
|
type: Recreate
|
|
|
|
image:
|
|
# -- Repository to use for the Slack bot
|
|
repository: argoprojlabs/argocd-notifications
|
|
# -- Overrides the image tag whose default is the chart appVersion
|
|
tag: ""
|
|
# -- Image pull policy for the Slack bot
|
|
pullPolicy: IfNotPresent
|
|
|
|
# -- Secrets with credentials to pull images from a private registry
|
|
imagePullSecrets: []
|
|
|
|
service:
|
|
# -- Service annotations for Slack bot
|
|
annotations: {}
|
|
# -- Service port for Slack bot
|
|
port: 80
|
|
# -- Service type for Slack bot
|
|
type: LoadBalancer
|
|
|
|
serviceAccount:
|
|
# -- Specifies whether a service account should be created
|
|
create: true
|
|
|
|
# -- The name of the service account to use.
|
|
## If not set and create is true, a name is generated using the fullname template
|
|
name: argocd-notifications-bot
|
|
|
|
# -- Annotations applied to created service account
|
|
annotations: {}
|
|
|
|
# -- Pod Security Context
|
|
securityContext:
|
|
runAsNonRoot: true
|
|
|
|
# -- Container Security Context
|
|
containerSecurityContext: {}
|
|
|
|
# -- Resource limits and requests for the Slack bot
|
|
resources: {}
|
|
# limits:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
# requests:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
|
|
# -- Assign custom [affinity] rules
|
|
affinity: {}
|
|
|
|
# -- [Tolerations] for use with node taints
|
|
tolerations: []
|
|
|
|
# -- [Node selector]
|
|
nodeSelector: {}
|