feat(argo-cd): Update to use v2.3.1 release (#1162)
* feat(argo-cd): Update to use v2.3.1 release Signed-off-by: mikeeq <miotk.mikolaj@gmail.com> * Move applicationSet.* and notifications.* to a dedicated location Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Fix typo in deployment.yaml Signed-off-by: mikeeq <miotk.mikolaj@gmail.com> * Fix notifications bot deployment Signed-off-by: mikeeq <miotk.mikolaj@gmail.com> * Update README.md Signed-off-by: mikeeq <miotk.mikolaj@gmail.com> * Update README.md and fix slack bot image Signed-off-by: mikeeq <miotk.mikolaj@gmail.com> * Drop nameOverride for new components as we use the global one Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Drop "applicationSet.args.namespace" and "applicationSet.args.argocdRepoServer" Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Consistent use of volumes (gpg, tls, knownHosts, extra) Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Bump major chart version and place a note in teh Upgrading section Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Change "enableStatefulSet: true" as we are in a major release now Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Drop PSP of applicationSet Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Fix applicationset webhook-ingress Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Drop unused variables in values.yaml and README Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Also set namespace and argocd-repo-server args on notification-controller Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Consistent use of "Argo CD" instead of "ArgoCD" Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Trigger CI Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> Co-authored-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>
This commit is contained in:
parent
c8f0471bd0
commit
32a06059c3
28 changed files with 8325 additions and 64 deletions
|
|
@ -1,4 +1,4 @@
|
|||
## ArgoCD configuration
|
||||
## Argo CD configuration
|
||||
## Ref: https://github.com/argoproj/argo-cd
|
||||
##
|
||||
|
||||
|
|
@ -11,11 +11,11 @@ kubeVersionOverride: ""
|
|||
|
||||
global:
|
||||
image:
|
||||
# -- If defined, a repository applied to all ArgoCD deployments
|
||||
# -- If defined, a repository applied to all Argo CD deployments
|
||||
repository: quay.io/argoproj/argocd
|
||||
# -- Overrides the global ArgoCD image tag whose default is the chart appVersion
|
||||
# -- Overrides the global Argo CD image tag whose default is the chart appVersion
|
||||
tag: ""
|
||||
# -- If defined, a imagePullPolicy applied to all ArgoCD deployments
|
||||
# -- If defined, a imagePullPolicy applied to all Argo CD deployments
|
||||
imagePullPolicy: IfNotPresent
|
||||
# -- Annotations for the all deployed pods
|
||||
podAnnotations: {}
|
||||
|
|
@ -107,8 +107,7 @@ controller:
|
|||
replicas: 1
|
||||
|
||||
# -- Deploy the application controller as a StatefulSet instead of a Deployment, this is required for HA capability.
|
||||
# This is a feature flag that will become the default in chart version 3.x
|
||||
enableStatefulSet: false
|
||||
enableStatefulSet: true
|
||||
|
||||
## Application controller commandline flags
|
||||
args:
|
||||
|
|
@ -288,9 +287,9 @@ controller:
|
|||
# labels:
|
||||
# severity: critical
|
||||
# annotations:
|
||||
# summary: "[ArgoCD] No reported applications"
|
||||
# summary: "[Argo CD] No reported applications"
|
||||
# description: >
|
||||
# ArgoCD has not reported any applications data for the past 15 minutes which
|
||||
# Argo CD has not reported any applications data for the past 15 minutes which
|
||||
# means that it must be down or not functioning properly. This needs to be
|
||||
# resolved for this cloud to continue to maintain state.
|
||||
# - alert: ArgoAppNotSynced
|
||||
|
|
@ -310,7 +309,7 @@ controller:
|
|||
# namespace: monitoring
|
||||
# additionalLabels: {}
|
||||
|
||||
## Enable if you would like to grant rights to ArgoCD to deploy to the local Kubernetes cluster.
|
||||
## Enable if you would like to grant rights to Argo CD to deploy to the local Kubernetes cluster.
|
||||
clusterAdminAccess:
|
||||
# -- Enable RBAC for local cluster deployments
|
||||
enabled: true
|
||||
|
|
@ -329,7 +328,7 @@ controller:
|
|||
# -- Init containers to add to the application controller pod
|
||||
## If your target Kubernetes cluster(s) require a custom auth provider executable
|
||||
## you could use this (and the same in the server pod) to bootstrap
|
||||
## that executable into your ArgoCD container
|
||||
## that executable into your Argo CD container
|
||||
initContainers: []
|
||||
# - name: download-tools
|
||||
# image: alpine:3.8
|
||||
|
|
@ -1134,7 +1133,7 @@ server:
|
|||
# -- Termination policy of Openshift Route
|
||||
termination_policy: None
|
||||
|
||||
# -- Manage ArgoCD configmap (Declarative Setup)
|
||||
# -- Manage Argo CD configmap (Declarative Setup)
|
||||
## Ref: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/argocd-cm.yaml
|
||||
configEnabled: true
|
||||
# -- [General Argo CD configuration]
|
||||
|
|
@ -1171,10 +1170,10 @@ server:
|
|||
# - profile
|
||||
# - email
|
||||
|
||||
# -- Annotations to be added to ArgoCD ConfigMap
|
||||
# -- Annotations to be added to Argo CD ConfigMap
|
||||
configAnnotations: {}
|
||||
|
||||
# -- ArgoCD rbac config ([ArgoCD RBAC policy])
|
||||
# -- Argo CD rbac config ([Argo CD RBAC policy])
|
||||
## Ref: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/rbac.md
|
||||
rbacConfig:
|
||||
{}
|
||||
|
|
@ -1197,14 +1196,14 @@ server:
|
|||
# If omitted, defaults to: '[groups]'. The scope value can be a string, or a list of strings.
|
||||
# scopes: '[cognito:groups, email]'
|
||||
|
||||
# -- Annotations to be added to ArgoCD rbac ConfigMap
|
||||
# -- Annotations to be added to Argo CD rbac ConfigMap
|
||||
rbacConfigAnnotations: {}
|
||||
|
||||
# -- Whether or not to create the configmap. If false, it is expected the configmap will be created
|
||||
# by something else. ArgoCD will not work if there is no configMap created with the name above.
|
||||
# by something else. Argo CD will not work if there is no configMap created with the name above.
|
||||
rbacConfigCreate: true
|
||||
|
||||
# -- Deploy ArgoCD Applications within this helm release
|
||||
# -- Deploy Argo CD Applications within this helm release
|
||||
# @default -- `[]` (See [values.yaml])
|
||||
## Ref: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/
|
||||
additionalApplications: []
|
||||
|
|
@ -1237,7 +1236,7 @@ server:
|
|||
# - name: url
|
||||
# value: https://argoproj.github.io/
|
||||
|
||||
# -- Deploy ArgoCD Projects within this helm release
|
||||
# -- Deploy Argo CD Projects within this helm release
|
||||
# @default -- `[]` (See [values.yaml])
|
||||
## Ref: https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/
|
||||
additionalProjects: []
|
||||
|
|
@ -1281,7 +1280,7 @@ server:
|
|||
# - keyID: ABCDEF1234567890
|
||||
|
||||
## Enable Admin ClusterRole resources.
|
||||
## Enable if you would like to grant rights to ArgoCD to deploy to the local Kubernetes cluster.
|
||||
## Enable if you would like to grant rights to Argo CD to deploy to the local Kubernetes cluster.
|
||||
clusterAdminAccess:
|
||||
# -- Enable RBAC for local cluster deployments
|
||||
enabled: true
|
||||
|
|
@ -1345,7 +1344,7 @@ server:
|
|||
# -- Init containers to add to the server pod
|
||||
## If your target Kubernetes cluster(s) require a custom auth provider executable
|
||||
## you could use this (and the same in the application controller pod) to bootstrap
|
||||
## that executable into your ArgoCD container
|
||||
## that executable into your Argo CD container
|
||||
initContainers: []
|
||||
# - name: download-tools
|
||||
# image: alpine:3.8
|
||||
|
|
@ -1571,7 +1570,7 @@ repoServer:
|
|||
additionalLabels: {}
|
||||
|
||||
## Enable Admin ClusterRole resources.
|
||||
## Enable if you would like to grant cluster rights to ArgoCD repo server.
|
||||
## Enable if you would like to grant cluster rights to Argo CD repo server.
|
||||
clusterAdminAccess:
|
||||
# -- Enable RBAC for local cluster deployments
|
||||
enabled: false
|
||||
|
|
@ -1861,3 +1860,672 @@ configs:
|
|||
openshift:
|
||||
# -- enables using arbitrary uid for argo repo server
|
||||
enabled: false
|
||||
|
||||
applicationSet:
|
||||
# -- Application Set controller name string
|
||||
name: applicationset-controller
|
||||
|
||||
# -- The number of controller pods to run
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
# -- Repository to use for the application set controller
|
||||
repository: quay.io/argoproj/argocd-applicationset
|
||||
# -- Image pull policy for the application set controller
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Tag to use for the application set controller
|
||||
tag: "v0.4.1"
|
||||
|
||||
args:
|
||||
# -- The default metric address
|
||||
metricsAddr: :8080
|
||||
# -- The default health check port
|
||||
probeBindAddr: :8081
|
||||
# -- The default leader election setting
|
||||
enableLeaderElection: false
|
||||
# -- How application is synced between the generator and the cluster
|
||||
policy: sync
|
||||
# -- Print debug logs
|
||||
debug: false
|
||||
# -- Enable dry run mode
|
||||
dryRun: false
|
||||
|
||||
# -- Additional containers to be added to the applicationset controller pod
|
||||
extraContainers: []
|
||||
|
||||
## Metrics service configuration
|
||||
metrics:
|
||||
# -- Deploy metrics service
|
||||
enabled: false
|
||||
service:
|
||||
# -- Metrics service annotations
|
||||
annotations: {}
|
||||
# -- Metrics service labels
|
||||
labels: {}
|
||||
# -- Metrics service port
|
||||
servicePort: 8085
|
||||
serviceMonitor:
|
||||
# -- Enable a prometheus ServiceMonitor
|
||||
enabled: false
|
||||
# -- Prometheus ServiceMonitor interval
|
||||
interval: 30s
|
||||
# -- Prometheus [RelabelConfigs] to apply to samples before scraping
|
||||
relabelings: []
|
||||
# -- Prometheus [MetricRelabelConfigs] to apply to samples before ingestion
|
||||
metricRelabelings: []
|
||||
# -- Prometheus ServiceMonitor selector
|
||||
selector: {}
|
||||
# prometheus: kube-prometheus
|
||||
|
||||
# -- Prometheus ServiceMonitor namespace
|
||||
namespace: "" # monitoring
|
||||
# -- Prometheus ServiceMonitor labels
|
||||
additionalLabels: {}
|
||||
|
||||
# -- If defined, uses a Secret to pull an image from a private Docker registry or repository.
|
||||
imagePullSecrets: []
|
||||
|
||||
## Application set service configuration
|
||||
service:
|
||||
# -- Application set service annotations
|
||||
annotations: {}
|
||||
# -- Application set service labels
|
||||
labels: {}
|
||||
# -- Application set service port
|
||||
port: 7000
|
||||
# -- Application set service port name
|
||||
portName: webhook
|
||||
|
||||
serviceAccount:
|
||||
# -- Specifies whether a service account should be created
|
||||
create: true
|
||||
# -- Annotations to add to the service account
|
||||
annotations: {}
|
||||
# -- The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
|
||||
# -- Annotations for the controller pods
|
||||
podAnnotations: {}
|
||||
|
||||
# -- Labels for the controller pods
|
||||
podLabels: {}
|
||||
|
||||
# -- Pod Security Context
|
||||
podSecurityContext: {}
|
||||
# fsGroup: 2000
|
||||
|
||||
# -- Security Context
|
||||
securityContext: {}
|
||||
# capabilities:
|
||||
# drop:
|
||||
# - ALL
|
||||
# readOnlyRootFilesystem: true
|
||||
# runAsNonRoot: true
|
||||
# runAsUser: 1000
|
||||
|
||||
# -- Resource limits and requests for the controller pods.
|
||||
resources: {}
|
||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||
# choice for the user. This also increases chances charts run on environments with little
|
||||
# resources, such as Minikube. If you do want to specify resources, uncomment the following
|
||||
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
|
||||
# limits:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
# requests:
|
||||
# cpu: 100m
|
||||
# memory: 128Mi
|
||||
|
||||
# -- [Node selector]
|
||||
nodeSelector: {}
|
||||
|
||||
# -- [Tolerations] for use with node taints
|
||||
tolerations: []
|
||||
|
||||
# -- Assign custom [affinity] rules
|
||||
affinity: {}
|
||||
|
||||
# -- If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default.
|
||||
priorityClassName: ""
|
||||
|
||||
# -- List of extra mounts to add (normally used with extraVolumes)
|
||||
extraVolumeMounts: []
|
||||
# - mountPath: /tmp/foobar
|
||||
# name: foobar
|
||||
|
||||
# -- List of extra volumes to add
|
||||
extraVolumes: []
|
||||
# - name: foobar
|
||||
# emptyDir: {}
|
||||
|
||||
# -- List of extra cli args to add
|
||||
extraArgs: []
|
||||
# - --loglevel=warn
|
||||
|
||||
# -- Environment variables to pass to the controller
|
||||
extraEnv: []
|
||||
# - name: "MY_VAR"
|
||||
# value: "value"
|
||||
|
||||
# -- envFrom to pass to the controller
|
||||
# @default -- `[]` (See [values.yaml])
|
||||
extraEnvFrom: []
|
||||
# - configMapRef:
|
||||
# name: config-map-name
|
||||
# - secretRef:
|
||||
# name: secret-name
|
||||
|
||||
## Webhook for the Git Generator
|
||||
## Ref: https://argocd-applicationset.readthedocs.io/en/master/Generators-Git/#webhook-configuration)
|
||||
webhook:
|
||||
ingress:
|
||||
# -- Enable an ingress resource for Webhooks
|
||||
enabled: false
|
||||
# -- Additional ingress annotations
|
||||
annotations: {}
|
||||
# -- Additional ingress labels
|
||||
labels: {}
|
||||
# -- Defines which ingress controller will implement the resource
|
||||
ingressClassName: ""
|
||||
|
||||
# -- List of ingress hosts
|
||||
## Hostnames must be provided if Ingress is enabled.
|
||||
## Secrets must be manually created in the namespace
|
||||
hosts: []
|
||||
# - argocd-applicationset.example.com
|
||||
|
||||
# -- List of ingress paths
|
||||
paths:
|
||||
- /api/webhook
|
||||
# -- Ingress path type. One of `Exact`, `Prefix` or `ImplementationSpecific`
|
||||
pathType: Prefix
|
||||
# -- Additional ingress paths
|
||||
extraPaths: []
|
||||
# - path: /*
|
||||
# backend:
|
||||
# serviceName: ssl-redirect
|
||||
# servicePort: use-annotation
|
||||
## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
|
||||
# - path: /*
|
||||
# pathType: Prefix
|
||||
# backend:
|
||||
# service:
|
||||
# name: ssl-redirect
|
||||
# port:
|
||||
# name: use-annotation
|
||||
|
||||
# -- Ingress TLS configuration
|
||||
tls: []
|
||||
# - secretName: argocd-applicationset-tls
|
||||
# hosts:
|
||||
# - argocd-applicationset.example.com
|
||||
|
||||
notifications:
|
||||
# -- Notifications controller name string
|
||||
name: notifications-controller
|
||||
|
||||
# -- Assign custom [affinity] rules
|
||||
affinity: {}
|
||||
|
||||
# -- Argo CD dashboard url; used in place of {{.context.argocdUrl}} in templates
|
||||
argocdUrl:
|
||||
|
||||
image:
|
||||
# -- Repository to use for the notifications controller
|
||||
# @default -- `""` (defaults to global.image.repository)
|
||||
repository: ""
|
||||
# -- Tag to use for the notifications controller
|
||||
# @default -- `""` (defaults to global.image.tag)
|
||||
tag: ""
|
||||
# -- Image pull policy for the notifications controller
|
||||
# @default -- `""` (defaults to global.image.imagePullPolicy)
|
||||
imagePullPolicy: ""
|
||||
|
||||
# -- Secrets with credentials to pull images from a private registry
|
||||
imagePullSecrets: []
|
||||
|
||||
# -- [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: []
|
||||
|
||||
# -- Additional container environment variables
|
||||
extraEnv: []
|
||||
|
||||
# -- List of extra mounts to add (normally used with extraVolumes)
|
||||
extraVolumeMounts: []
|
||||
# - mountPath: /tmp/foobar
|
||||
# name: foobar
|
||||
|
||||
# -- List of extra volumes to add
|
||||
extraVolumes: []
|
||||
# - name: foobar
|
||||
# emptyDir: {}
|
||||
|
||||
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
|
||||
|
||||
# -- 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
|
||||
# @default -- `""` (defaults to global.image.repository)
|
||||
repository: ""
|
||||
# -- Tag to use for the Slack bot
|
||||
# @default -- `""` (defaults to global.image.tag)
|
||||
tag: ""
|
||||
# -- Image pull policy for the Slack bot
|
||||
# @default -- `""` (defaults to global.image.imagePullPolicy)
|
||||
imagePullPolicy: ""
|
||||
|
||||
# -- 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: {}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue