forked from argoproj/argo-helm
chore!: Remove deprecated argocd-applicationset and argocd-notifications (#1237)
Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>main
parent
93274f59ae
commit
39bd0e1b30
|
@ -21,9 +21,7 @@ body:
|
|||
- argo-events
|
||||
- argo-rollouts
|
||||
- argo-workflows
|
||||
- argocd-applicationset
|
||||
- argocd-image-updater
|
||||
- argocd-notifications
|
||||
- other
|
||||
validations:
|
||||
required: true
|
||||
|
|
|
@ -23,9 +23,7 @@ body:
|
|||
- argo-events
|
||||
- argo-rollouts
|
||||
- argo-workflows
|
||||
- argocd-applicationset
|
||||
- argocd-image-updater
|
||||
- argocd-notifications
|
||||
- other
|
||||
validations:
|
||||
required: true
|
||||
|
|
|
@ -15,5 +15,4 @@ validate-chart-schema: false
|
|||
validate-maintainers: true
|
||||
validate-yaml: true
|
||||
exclude-deprecated: true
|
||||
excluded-charts:
|
||||
- "argocd-applicationset"
|
||||
excluded-charts: []
|
||||
|
|
|
@ -50,9 +50,7 @@ jobs:
|
|||
|
||||
- name: Deploy latest ArgoCD CRDs when testing ArgoCD extensions
|
||||
if: |
|
||||
contains(steps.list-changed.outputs.changed_charts, 'argocd-applicationset') ||
|
||||
contains(steps.list-changed.outputs.changed_charts, 'argocd-image-updater') ||
|
||||
contains(steps.list-changed.outputs.changed_charts, 'argocd-notifications')
|
||||
contains(steps.list-changed.outputs.changed_charts, 'argocd-image-updater')
|
||||
run: |
|
||||
kubectl apply -f charts/argo-cd/crds
|
||||
|
||||
|
|
|
@ -14,6 +14,3 @@
|
|||
|
||||
# Argo Rollouts
|
||||
/charts/argo-rollouts/
|
||||
|
||||
# Argo CD Notifications
|
||||
/charts/argocd-notifications/ @alexmt @andyfeller @mbevc1
|
||||
|
|
|
@ -119,16 +119,6 @@ argocd app create guestbook --dest-namespace default --dest-server https://kuber
|
|||
argocd app sync guestbook
|
||||
```
|
||||
|
||||
## Testing Argo CD Notification Changes
|
||||
|
||||
Thorough testing of argocd-notifications would require one or more notification services (Slack, OpsGenie, etc), however
|
||||
minimal testing mostly consists of successful Helm chart installation and the argocd-notifications controller having
|
||||
access to the `Application` resources in the same namespace that Argo CD is installed.
|
||||
|
||||
```
|
||||
helm install argocd-notifications charts/argocd-notifications --namespace argocd
|
||||
```
|
||||
|
||||
## New Application Versions
|
||||
|
||||
When raising application versions ensure you make the following changes:
|
||||
|
|
|
@ -1,25 +0,0 @@
|
|||
# Patterns to ignore when building packages.
|
||||
# This supports shell glob matching, relative path matching, and
|
||||
# negation (prefixed with !). Only one pattern per line.
|
||||
.DS_Store
|
||||
# Common VCS dirs
|
||||
.git/
|
||||
.gitignore
|
||||
.bzr/
|
||||
.bzrignore
|
||||
.hg/
|
||||
.hgignore
|
||||
.svn/
|
||||
# Common backup files
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*.orig
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
.vscode/
|
||||
ci/
|
||||
*.gotmpl
|
|
@ -1,18 +0,0 @@
|
|||
apiVersion: v2
|
||||
name: argocd-applicationset
|
||||
description: A Helm chart for installing ArgoCD ApplicationSet
|
||||
deprecated: true
|
||||
type: application
|
||||
version: 1.12.1
|
||||
appVersion: "v0.4.1"
|
||||
home: https://github.com/argoproj/argo-helm
|
||||
icon: https://argocd-applicationset.readthedocs.io/en/stable/assets/logo.png
|
||||
keywords:
|
||||
- argoproj
|
||||
- appset
|
||||
- gitops
|
||||
maintainers:
|
||||
- name: maruina
|
||||
annotations:
|
||||
artifacthub.io/changes: |
|
||||
- "[Deprecated]: This chart is now deprecated and will be removed soon. Please upgrade to Argo CD 2.3+ (chart version 4.x) which includes ApplicationSet."
|
|
@ -1,121 +0,0 @@
|
|||
# Argo CD ApplicationSet Chart
|
||||
|
||||
A Helm chart for Argo CD ApplicationSet, a controller to programmatically generate Argo CD Application.
|
||||
|
||||
Source code can be found [here](https://github.com/argoproj-labs/applicationset/)
|
||||
|
||||
## Additional Information
|
||||
|
||||
This is a **community maintained** chart. This chart installs the [applicationset](https://github.com/argoproj-labs/applicationset) controller.
|
||||
|
||||
This chart currently installs the non-HA version of Argo CD ApplicationSet.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Helm v3.0.0+
|
||||
- The ApplicationSet controller **must** be installed into the same namespace as the Argo CD it is targetting.
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `my-release`:
|
||||
|
||||
```console
|
||||
$ helm repo add argo https://argoproj.github.io/argo-helm
|
||||
"argo" has been added to your repositories
|
||||
|
||||
$ helm install --name my-release argo/argocd-applicationset
|
||||
NAME: my-release
|
||||
...
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
Users can test the chart with [kind](https://kind.sigs.k8s.io/) and [ct](https://github.com/helm/chart-testing).
|
||||
|
||||
```console
|
||||
kind create cluster
|
||||
kubectl create namespace argocd
|
||||
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
|
||||
ct install --namespace argocd
|
||||
```
|
||||
|
||||
## Notes on CRD Installation
|
||||
|
||||
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--skip-crds` when installing the chart.
|
||||
|
||||
You then can install the CRDs manually from `crds` folder or via the manifests from the upstream project repo:
|
||||
|
||||
```console
|
||||
kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/crds?ref=<appVersion>
|
||||
|
||||
# Eg. version v0.1.0
|
||||
kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/crds?ref=v0.1.0
|
||||
```
|
||||
|
||||
## Values
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| affinity | object | `{}` | [Assign custom affinity rules to the deployment](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/) |
|
||||
| apiVersionOverrides.ingress | string | `""` | String to override apiVersion of ingresses rendered by this helm chart |
|
||||
| args.argocdRepoServer | string | `"argocd-repo-server:8081"` | The default Argo CD repo server address |
|
||||
| args.debug | bool | `false` | Print debug logs |
|
||||
| args.dryRun | bool | `false` | Enable dry run mode |
|
||||
| args.enableLeaderElection | bool | `false` | The default leader election setting |
|
||||
| args.metricsAddr | string | `":8080"` | The default metric address |
|
||||
| args.namespace | string | `""` | Namespace where ArgoCD is deployed to (defaults to .Release.Namespace) |
|
||||
| args.policy | string | `"sync"` | How application is synced between the generator and the cluster |
|
||||
| args.probeBindAddr | string | `":8081"` | The default health check port |
|
||||
| extraArgs | list | `[]` | List of extra cli args to add |
|
||||
| extraContainers | list | `[]` | Additional containers to be added to the applicationset controller pod |
|
||||
| extraEnv | list | `[]` | Environment variables to pass to the controller |
|
||||
| extraEnvFrom | list | `[]` (See [values.yaml]) | envFrom to pass to the controller |
|
||||
| extraVolumeMounts | list | `[]` | List of extra mounts to add (normally used with extraVolumes) |
|
||||
| extraVolumes | list | `[]` | List of extra volumes to add |
|
||||
| fullnameOverride | string | `""` | Override the default fully qualified app name |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy |
|
||||
| image.repository | string | `"quay.io/argoproj/argocd-applicationset"` | The image repository |
|
||||
| image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion. |
|
||||
| imagePullSecrets | list | `[]` | If defined, uses a Secret to pull an image from a private Docker registry or repository. |
|
||||
| kubeVersionOverride | string | `""` | Override the Kubernetes version, which is used to evaluate certain manifests |
|
||||
| metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| metrics.service.servicePort | int | `8085` | Metrics service port |
|
||||
| metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
| metrics.serviceMonitor.interval | string | `"30s"` | Prometheus ServiceMonitor interval |
|
||||
| metrics.serviceMonitor.metricRelabelings | list | `[]` | Prometheus [MetricRelabelConfigs] to apply to samples before ingestion |
|
||||
| metrics.serviceMonitor.namespace | string | `""` | Prometheus ServiceMonitor namespace |
|
||||
| metrics.serviceMonitor.relabelings | list | `[]` | Prometheus [RelabelConfigs] to apply to samples before scraping |
|
||||
| metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| mountGPGKeyringVolume | bool | `true` | Mount an emptyDir volume for `gpg-keyring` |
|
||||
| mountGPGKeysVolume | bool | `false` | Mount the `argocd-gpg-keys-cm` volume |
|
||||
| mountSSHKnownHostsVolume | bool | `true` | Mount the `argocd-ssh-known-hosts-cm` volume |
|
||||
| mountTLSCertsVolume | bool | `true` | Mount the `argocd-tls-certs-cm` volume |
|
||||
| nameOverride | string | `""` | Provide a name in place of `argocd-applicationset` |
|
||||
| nodeSelector | object | `{}` | [Node selector](https://kubernetes.io/docs/user-guide/node-selection/) |
|
||||
| podAnnotations | object | `{}` | Annotations for the controller pods |
|
||||
| podLabels | object | `{}` | Labels for the controller pods |
|
||||
| podSecurityContext | object | `{}` | Pod Security Context |
|
||||
| priorityClassName | string | `""` | If specified, indicates the pod's priority. If not specified, the pod priority will be default or zero if there is no default. |
|
||||
| rbac.pspEnabled | bool | `true` | Enable Pod Security Policy |
|
||||
| replicaCount | int | `1` | The number of controller pods to run |
|
||||
| resources | object | `{}` | Resource limits and requests for the controller pods. |
|
||||
| securityContext | object | `{}` | Security Context |
|
||||
| serviceAccount.annotations | object | `{}` | Annotations to add to the service account |
|
||||
| serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
|
||||
| serviceAccount.name | string | `""` | The name of the service account to use. If not set and create is true, a name is generated using the fullname template |
|
||||
| tolerations | list | `[]` | [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) |
|
||||
| webhook.ingress.annotations | object | `{}` | Additional ingress annotations |
|
||||
| webhook.ingress.enabled | bool | `false` | Enable an ingress resource for Webhooks |
|
||||
| webhook.ingress.extraPaths | list | `[]` | Additional ingress paths |
|
||||
| webhook.ingress.hosts | list | `[]` | List of ingress hosts |
|
||||
| webhook.ingress.ingressClassName | string | `""` | Defines which ingress controller will implement the resource |
|
||||
| webhook.ingress.labels | object | `{}` | Additional ingress labels |
|
||||
| webhook.ingress.pathType | string | `"Prefix"` | Ingress path type. One of `Exact`, `Prefix` or `ImplementationSpecific` |
|
||||
| webhook.ingress.paths | list | `["/api/webhook"]` | List of ingress paths |
|
||||
| webhook.ingress.tls | list | `[]` | Ingress TLS configuration |
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
|
@ -1,58 +0,0 @@
|
|||
# Argo CD ApplicationSet Chart
|
||||
|
||||
A Helm chart for Argo CD ApplicationSet, a controller to programmatically generate Argo CD Application.
|
||||
|
||||
Source code can be found [here](https://github.com/argoproj-labs/applicationset/)
|
||||
|
||||
## Additional Information
|
||||
|
||||
This is a **community maintained** chart. This chart installs the [applicationset](https://github.com/argoproj-labs/applicationset) controller.
|
||||
|
||||
This chart currently installs the non-HA version of Argo CD ApplicationSet.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Helm v3.0.0+
|
||||
- The ApplicationSet controller **must** be installed into the same namespace as the Argo CD it is targetting.
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `my-release`:
|
||||
|
||||
```console
|
||||
$ helm repo add argo https://argoproj.github.io/argo-helm
|
||||
"argo" has been added to your repositories
|
||||
|
||||
$ helm install --name my-release argo/argocd-applicationset
|
||||
NAME: my-release
|
||||
...
|
||||
```
|
||||
|
||||
### Testing
|
||||
|
||||
Users can test the chart with [kind](https://kind.sigs.k8s.io/) and [ct](https://github.com/helm/chart-testing).
|
||||
|
||||
```console
|
||||
kind create cluster
|
||||
kubectl create namespace argocd
|
||||
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
|
||||
ct install --namespace argocd
|
||||
```
|
||||
|
||||
## Notes on CRD Installation
|
||||
|
||||
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--skip-crds` when installing the chart.
|
||||
|
||||
You then can install the CRDs manually from `crds` folder or via the manifests from the upstream project repo:
|
||||
|
||||
```console
|
||||
kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/crds?ref=<appVersion>
|
||||
|
||||
# Eg. version v0.1.0
|
||||
kubectl apply -k https://github.com/argoproj-labs/applicationset.git/manifests/crds?ref=v0.1.0
|
||||
```
|
||||
|
||||
{{ template "chart.valuesSection" . }}
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
|
@ -1,6 +0,0 @@
|
|||
# Test with default values
|
||||
|
||||
# Disable mounts of ArgoCD related ConfigMaps as ArgoCD isn't installed during chart testing
|
||||
mountSSHKnownHostsVolume: false
|
||||
mountTLSCertsVolume: false
|
||||
mountGPGKeysVolume: false
|
|
@ -1,9 +0,0 @@
|
|||
args:
|
||||
enableLeaderElection: true
|
||||
|
||||
replicaCount: 3
|
||||
|
||||
# Disable mounts of ArgoCD related ConfigMaps as ArgoCD isn't installed during chart testing
|
||||
mountSSHKnownHostsVolume: false
|
||||
mountTLSCertsVolume: false
|
||||
mountGPGKeysVolume: false
|
|
@ -1,7 +0,0 @@
|
|||
metrics:
|
||||
enabled: true
|
||||
|
||||
# Disable mounts of ArgoCD related ConfigMaps as ArgoCD isn't installed during chart testing
|
||||
mountSSHKnownHostsVolume: false
|
||||
mountTLSCertsVolume: false
|
||||
mountGPGKeysVolume: false
|
File diff suppressed because it is too large
Load Diff
|
@ -1,86 +0,0 @@
|
|||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "argo-applicationset.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "argo-applicationset.fullname" -}}
|
||||
{{- if .Values.fullnameOverride }}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||
{{- if contains $name .Release.Name }}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||
{{- else }}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "argo-applicationset.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "argo-applicationset.labels" -}}
|
||||
helm.sh/chart: {{ include "argo-applicationset.chart" . }}
|
||||
{{ include "argo-applicationset.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/part-of: argo-cd-applicationset
|
||||
app.kubernetes.io/component: controller
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "argo-applicationset.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "argo-applicationset.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "argo-applicationset.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "argo-applicationset.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Return the target Kubernetes version
|
||||
*/}}
|
||||
{{- define "argo-applicationset.kubeVersion" -}}
|
||||
{{- default .Capabilities.KubeVersion.Version .Values.kubeVersionOverride }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the appropriate apiVersion for ingress
|
||||
*/}}
|
||||
{{- define "argo-applicationset.ingress.apiVersion" -}}
|
||||
{{- if .Values.apiVersionOverrides.ingress -}}
|
||||
{{- print .Values.apiVersionOverrides.ingress -}}
|
||||
{{- else if semverCompare "<1.14-0" (include "argo-applicationset.kubeVersion" $) -}}
|
||||
{{- print "extensions/v1beta1" -}}
|
||||
{{- else if semverCompare "<1.19-0" (include "argo-applicationset.kubeVersion" $) -}}
|
||||
{{- print "networking.k8s.io/v1beta1" -}}
|
||||
{{- else -}}
|
||||
{{- print "networking.k8s.io/v1" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
|
@ -1,137 +0,0 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "argo-applicationset.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argo-applicationset.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
{{- with .Values.podAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.selectorLabels" . | nindent 8 }}
|
||||
{{- with .Values.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argo-applicationset.serviceAccountName" . }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
containers:
|
||||
- name: {{ .Chart.Name }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
command:
|
||||
- entrypoint.sh
|
||||
- applicationset-controller
|
||||
- --metrics-addr={{ .Values.args.metricsAddr }}
|
||||
- --probe-addr={{ .Values.args.probeBindAddr }}
|
||||
{{- if or (gt ( .Values.replicaCount | int64) 1) .Values.args.enableLeaderElection }}
|
||||
- --enable-leader-election=true
|
||||
{{- end }}
|
||||
- --namespace={{ .Values.args.namespace | default .Release.Namespace }}
|
||||
- --argocd-repo-server={{ .Values.args.argocdRepoServer }}
|
||||
- --policy={{ .Values.args.policy }}
|
||||
- --debug={{ .Values.args.debug }}
|
||||
- --dry-run={{ .Values.args.dryRun }}
|
||||
{{- with .Values.extraArgs }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ (split ":" .Values.args.probeBindAddr)._1 }}
|
||||
protocol: TCP
|
||||
- name: metrics
|
||||
containerPort: {{ (split ":" .Values.args.metricsAddr)._1 }}
|
||||
protocol: TCP
|
||||
- name: webhook
|
||||
containerPort: 7000
|
||||
protocol: TCP
|
||||
{{- with .Values.extraEnv }}
|
||||
env:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- with .Values.extraEnvFrom }}
|
||||
envFrom:
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
volumeMounts:
|
||||
- mountPath: /tmp
|
||||
name: tmp-dir
|
||||
{{- if .Values.mountSSHKnownHostsVolume }}
|
||||
- mountPath: /app/config/ssh
|
||||
name: ssh-known-hosts
|
||||
{{- end }}
|
||||
{{- if .Values.mountTLSCertsVolume }}
|
||||
- mountPath: /app/config/tls
|
||||
name: tls-certs
|
||||
{{- end }}
|
||||
{{- if .Values.mountGPGKeysVolume }}
|
||||
- mountPath: /app/config/gpg/source
|
||||
name: gpg-keys
|
||||
{{- end }}
|
||||
{{- if .Values.mountGPGKeyringVolume }}
|
||||
- mountPath: /app/config/gpg/keys
|
||||
name: gpg-keyring
|
||||
{{- end }}
|
||||
{{- with .Values.extraVolumeMounts }}
|
||||
{{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- with .Values.extraContainers }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
- emptyDir: {}
|
||||
name: tmp-dir
|
||||
{{- if .Values.mountSSHKnownHostsVolume }}
|
||||
- configMap:
|
||||
name: argocd-ssh-known-hosts-cm
|
||||
name: ssh-known-hosts
|
||||
{{- end }}
|
||||
{{- if .Values.mountTLSCertsVolume }}
|
||||
- configMap:
|
||||
name: argocd-tls-certs-cm
|
||||
name: tls-certs
|
||||
{{- end }}
|
||||
{{- if .Values.mountGPGKeysVolume }}
|
||||
- configMap:
|
||||
name: argocd-gpg-keys-cm
|
||||
name: gpg-keys
|
||||
{{- end }}
|
||||
{{- if .Values.mountGPGKeyringVolume }}
|
||||
- emptyDir: {}
|
||||
name: gpg-keyring
|
||||
{{- end }}
|
||||
{{- with .Values.extraVolumes }}
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.priorityClassName }}
|
||||
priorityClassName: {{ . }}
|
||||
{{- end }}
|
|
@ -1,25 +0,0 @@
|
|||
{{- if .Values.metrics.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
{{- if .Values.metrics.service.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
{{- with .Values.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "argo-applicationset.fullname" . }}-metrics
|
||||
spec:
|
||||
ports:
|
||||
- name: metrics
|
||||
protocol: TCP
|
||||
port: {{ .Values.metrics.service.servicePort }}
|
||||
targetPort: metrics
|
||||
selector:
|
||||
{{- include "argo-applicationset.selectorLabels" . | nindent 4 }}
|
||||
{{- end }}
|
|
@ -1,57 +0,0 @@
|
|||
{{- if .Values.rbac.pspEnabled }}
|
||||
apiVersion: policy/v1beta1
|
||||
kind: PodSecurityPolicy
|
||||
metadata:
|
||||
name: {{ template "argo-applicationset.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
annotations:
|
||||
seccomp.security.alpha.kubernetes.io/allowedProfileNames: '*'
|
||||
spec:
|
||||
privileged: false
|
||||
hostIPC: false
|
||||
hostNetwork: false
|
||||
hostPID: false
|
||||
readOnlyRootFilesystem: false
|
||||
allowPrivilegeEscalation: false
|
||||
allowedCapabilities:
|
||||
- '*'
|
||||
fsGroup:
|
||||
rule: RunAsAny
|
||||
runAsUser:
|
||||
rule: RunAsAny
|
||||
seLinux:
|
||||
rule: RunAsAny
|
||||
supplementalGroups:
|
||||
rule: RunAsAny
|
||||
volumes:
|
||||
- '*'
|
||||
---
|
||||
kind: ClusterRole
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
metadata:
|
||||
name: {{ template "argo-applicationset.fullname" . }}-psp
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ['policy']
|
||||
resources: ['podsecuritypolicies']
|
||||
verbs: ['use']
|
||||
resourceNames:
|
||||
- {{ template "argo-applicationset.fullname" . }}
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ template "argo-applicationset.fullname" . }}-psp
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: {{ template "argo-applicationset.fullname" . }}-psp
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "argo-applicationset.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- end }}
|
|
@ -1,97 +0,0 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ include "argo-applicationset.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- applications
|
||||
- appprojects
|
||||
- applicationsets
|
||||
- applicationsets/finalizers
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- applicationsets/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- secrets
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- apps
|
||||
- extensions
|
||||
resources:
|
||||
- deployments
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resources:
|
||||
- leases
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ include "argo-applicationset.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ include "argo-applicationset.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "argo-applicationset.serviceAccountName" . }}
|
|
@ -1,14 +0,0 @@
|
|||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argo-applicationset.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
spec:
|
||||
ports:
|
||||
- name: webhook
|
||||
port: 7000
|
||||
protocol: TCP
|
||||
targetPort: webhook
|
||||
selector:
|
||||
{{- include "argo-applicationset.selectorLabels" . | nindent 6 }}
|
|
@ -1,12 +0,0 @@
|
|||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "argo-applicationset.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,38 +0,0 @@
|
|||
{{- if and .Values.metrics.enabled .Values.metrics.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ template "argo-applicationset.fullname" . }}
|
||||
{{- if .Values.metrics.serviceMonitor.namespace }}
|
||||
namespace: {{ .Values.metrics.serviceMonitor.namespace }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
{{- with .Values.metrics.serviceMonitor.selector }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.metrics.serviceMonitor.additionalLabels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- port: metrics
|
||||
{{- with .Values.metrics.serviceMonitor.interval }}
|
||||
interval: {{ . }}
|
||||
{{- end }}
|
||||
path: /metrics
|
||||
{{- with .Values.metrics.serviceMonitor.relabelings }}
|
||||
relabelings:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.metrics.serviceMonitor.metricRelabelings }}
|
||||
metricRelabelings:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argo-applicationset.selectorLabels" . | nindent 6 }}
|
||||
{{- end }}
|
|
@ -1,89 +0,0 @@
|
|||
{{- if .Values.webhook.ingress.enabled -}}
|
||||
{{- $serviceName := include "argo-applicationset.fullname" . -}}
|
||||
{{- $servicePort := "webhook" -}}
|
||||
{{- $paths := .Values.webhook.ingress.paths -}}
|
||||
{{- $extraPaths := .Values.webhook.ingress.extraPaths -}}
|
||||
{{- $pathType := .Values.webhook.ingress.pathType -}}
|
||||
apiVersion: {{ include "argo-applicationset.ingress.apiVersion" . }}
|
||||
kind: Ingress
|
||||
metadata:
|
||||
{{- if .Values.webhook.ingress.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.webhook.ingress.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
name: {{ include "argo-applicationset.fullname" . }}
|
||||
labels:
|
||||
{{- include "argo-applicationset.labels" . | nindent 4 }}
|
||||
{{- if .Values.webhook.ingress.labels }}
|
||||
{{- toYaml .Values.webhook.ingress.labels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if eq (include "argo-applicationset.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||
{{- with .Values.webhook.ingress.ingressClassName }}
|
||||
ingressClassName: {{ . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- if .Values.webhook.ingress.hosts }}
|
||||
{{- range $host := .Values.webhook.ingress.hosts }}
|
||||
- host: {{ $host }}
|
||||
http:
|
||||
paths:
|
||||
{{- if $extraPaths }}
|
||||
{{- toYaml $extraPaths | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- range $p := $paths }}
|
||||
- path: {{ $p }}
|
||||
{{- if eq (include "argo-applicationset.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||
pathType: {{ $pathType }}
|
||||
{{- end }}
|
||||
backend:
|
||||
{{- if eq (include "argo-applicationset.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||
service:
|
||||
name: {{ $serviceName }}
|
||||
port:
|
||||
{{- if kindIs "float64" $servicePort }}
|
||||
number: {{ $servicePort }}
|
||||
{{- else }}
|
||||
name: {{ $servicePort }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
serviceName: {{ $serviceName }}
|
||||
servicePort: {{ $servicePort }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- else }}
|
||||
- http:
|
||||
paths:
|
||||
{{- if $extraPaths }}
|
||||
{{- toYaml $extraPaths | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- range $p := $paths }}
|
||||
- path: {{ $p }}
|
||||
{{- if eq (include "argo-applicationset.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||
pathType: {{ $pathType }}
|
||||
{{- end }}
|
||||
backend:
|
||||
{{- if eq (include "argo-applicationset.ingress.apiVersion" $) "networking.k8s.io/v1" }}
|
||||
service:
|
||||
name: {{ $serviceName }}
|
||||
port:
|
||||
{{- if kindIs "float64" $servicePort }}
|
||||
number: {{ $servicePort }}
|
||||
{{- else }}
|
||||
name: {{ $servicePort }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
serviceName: {{ $serviceName }}
|
||||
servicePort: {{ $servicePort }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- if .Values.webhook.ingress.tls }}
|
||||
tls:
|
||||
{{- toYaml .Values.webhook.ingress.tls | nindent 4 }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
|
@ -1,219 +0,0 @@
|
|||
# Default values for argo-applicationset.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
# -- The number of controller pods to run
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
# -- The image repository
|
||||
repository: quay.io/argoproj/argocd-applicationset
|
||||
# -- Image pull policy
|
||||
pullPolicy: IfNotPresent
|
||||
# -- Overrides the image tag whose default is the chart appVersion.
|
||||
tag: ""
|
||||
|
||||
args:
|
||||
# -- The default metric address
|
||||
metricsAddr: :8080
|
||||
# -- The default health check port
|
||||
probeBindAddr: :8081
|
||||
# -- The default leader election setting
|
||||
enableLeaderElection: false
|
||||
# -- Namespace where ArgoCD is deployed to (defaults to .Release.Namespace)
|
||||
namespace: ""
|
||||
# -- The default Argo CD repo server address
|
||||
argocdRepoServer: argocd-repo-server:8081
|
||||
# -- 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: []
|
||||
# -- Provide a name in place of `argocd-applicationset`
|
||||
nameOverride: ""
|
||||
# -- Override the default fully qualified app name
|
||||
fullnameOverride: ""
|
||||
|
||||
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: {}
|
||||
|
||||
rbac:
|
||||
# -- Enable Pod Security Policy
|
||||
pspEnabled: true
|
||||
|
||||
# -- 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](https://kubernetes.io/docs/user-guide/node-selection/)
|
||||
nodeSelector: {}
|
||||
|
||||
# -- [Tolerations for use with node taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/)
|
||||
tolerations: []
|
||||
|
||||
# -- [Assign custom affinity rules to the deployment](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/)
|
||||
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: ""
|
||||
|
||||
# -- Mount the `argocd-ssh-known-hosts-cm` volume
|
||||
mountSSHKnownHostsVolume: true
|
||||
# -- Mount the `argocd-tls-certs-cm` volume
|
||||
mountTLSCertsVolume: true
|
||||
# -- Mount the `argocd-gpg-keys-cm` volume
|
||||
mountGPGKeysVolume: false
|
||||
# -- Mount an emptyDir volume for `gpg-keyring`
|
||||
mountGPGKeyringVolume: true
|
||||
|
||||
# -- 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
|
||||
|
||||
# -- Override the Kubernetes version, which is used to evaluate certain manifests
|
||||
kubeVersionOverride: ""
|
||||
|
||||
## Override APIVersions
|
||||
## If you want to template helm charts but cannot access k8s API server
|
||||
## you can set api versions here
|
||||
apiVersionOverrides:
|
||||
# -- String to override apiVersion of ingresses rendered by this helm chart
|
||||
ingress: "" # networking.k8s.io/v1beta1
|
||||
|
||||
## 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
|
|
@ -1,24 +0,0 @@
|
|||
# Patterns to ignore when building packages.
|
||||
# This supports shell glob matching, relative path matching, and
|
||||
# negation (prefixed with !). Only one pattern per line.
|
||||
.DS_Store
|
||||
# Common VCS dirs
|
||||
.git/
|
||||
.gitignore
|
||||
.bzr/
|
||||
.bzrignore
|
||||
.hg/
|
||||
.hgignore
|
||||
.svn/
|
||||
# Common backup files
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
.vscode/
|
||||
ci/
|
||||
*.gotmpl
|
|
@ -1,19 +0,0 @@
|
|||
apiVersion: v2
|
||||
appVersion: v1.2.1
|
||||
description: A Helm chart for ArgoCD notifications, an add-on to ArgoCD.
|
||||
deprecated: true
|
||||
name: argocd-notifications
|
||||
type: application
|
||||
version: 1.8.1
|
||||
home: https://github.com/argoproj/argo-helm
|
||||
icon: https://argocd-notifications.readthedocs.io/en/stable/assets/logo.png
|
||||
keywords:
|
||||
- argoproj
|
||||
- argocd
|
||||
- argocd-notifications
|
||||
maintainers:
|
||||
- name: alexmt
|
||||
- name: andyfeller
|
||||
annotations:
|
||||
artifacthub.io/changes: |
|
||||
- "[Deprecated]: This chart is now deprecated and will be removed soon. Please upgrade to Argo CD 2.3+ (chart version 4.x) which includes Argo CD Notifications."
|
|
@ -1,92 +0,0 @@
|
|||
## ArgoCD Notifications Chart
|
||||
|
||||
This is a **community maintained** chart. It installs the [argocd-notifications](https://github.com/argoproj-labs/argocd-notifications) application. This application comes packaged with:
|
||||
- Notifications Controller Deployment
|
||||
- Notifications Controller ConfigMap
|
||||
- Notifications Controller Secret
|
||||
- Service Account
|
||||
- Roles
|
||||
- Role Bindings
|
||||
|
||||
To regenerate this document, from the root of this chart directory run:
|
||||
|
||||
```console
|
||||
docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:latest
|
||||
```
|
||||
|
||||
## Values
|
||||
|
||||
### General parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| affinity | object | `{}` | Assign custom [affinity] rules |
|
||||
| argocdUrl | string | `nil` | ArgoCD dashboard url; used in place of {{.context.argocdUrl}} in templates |
|
||||
| cm.create | bool | `true` | Whether helm chart creates controller config map |
|
||||
| cm.name | string | `""` | The name of the config map to use. |
|
||||
| containerSecurityContext | object | `{}` | Container Security Context |
|
||||
| context | object | `{}` | Define user-defined context |
|
||||
| extraArgs | list | `[]` | Extra arguments to provide to the controller |
|
||||
| extraEnv | list | `[]` | Additional container environment variables |
|
||||
| fullnameOverride | string | `""` | String to partially override "argocd-notifications.fullname" template |
|
||||
| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy for the controller |
|
||||
| image.repository | string | `"argoprojlabs/argocd-notifications"` | Repository to use for the controller |
|
||||
| image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion |
|
||||
| imagePullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry |
|
||||
| logLevel | string | `"info"` | Set the logging level. (One of: `debug`, `info`, `warn`, `error`) |
|
||||
| metrics.enabled | bool | `false` | Enables prometheus metrics server |
|
||||
| metrics.port | int | `9001` | Metrics port |
|
||||
| metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
| nameOverride | string | `"argocd-notifications"` | String to partially override "argocd-notifications.fullname" template |
|
||||
| nodeSelector | object | `{}` | [Node selector] |
|
||||
| notifiers | object | See [values.yaml] | Configures notification services |
|
||||
| podAnnotations | object | `{}` | Annotations to be applied to the controller Pods |
|
||||
| podLabels | object | `{}` | Labels to be applied to the controller Pods |
|
||||
| resources | object | `{}` | Resource limits and requests for the controller |
|
||||
| secret.annotations | object | `{}` | key:value pairs of annotations to be added to the secret |
|
||||
| secret.create | bool | `true` | Whether helm chart creates controller secret |
|
||||
| secret.items | object | `{}` | Generic key:value pairs to be inserted into the secret |
|
||||
| secret.name | string | `""` | The name of the secret to use. |
|
||||
| securityContext | object | `{"runAsNonRoot":true}` | Pod Security Context |
|
||||
| serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
|
||||
| serviceAccount.name | string | `"argocd-notifications-controller"` | The name of the service account to use. |
|
||||
| subscriptions | object | `{}` | Contains centrally managed global application subscriptions |
|
||||
| templates | object | `{}` | The notification template is used to generate the notification content |
|
||||
| tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| triggers | object | `{}` | The trigger defines the condition when the notification should be sent |
|
||||
| updateStrategy | object | `{"type":"Recreate"}` | The deployment strategy to use to replace existing pods with new ones |
|
||||
|
||||
### Bots
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| bots.slack.affinity | object | `{}` | Assign custom [affinity] rules |
|
||||
| bots.slack.containerSecurityContext | object | `{}` | Container Security Context |
|
||||
| bots.slack.enabled | bool | `false` | Enable slack bot |
|
||||
| bots.slack.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy for the Slack bot |
|
||||
| bots.slack.image.repository | string | `"argoprojlabs/argocd-notifications"` | Repository to use for the Slack bot |
|
||||
| bots.slack.image.tag | string | `""` | Overrides the image tag whose default is the chart appVersion |
|
||||
| bots.slack.imagePullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry |
|
||||
| bots.slack.nodeSelector | object | `{}` | [Node selector] |
|
||||
| bots.slack.resources | object | `{}` | Resource limits and requests for the Slack bot |
|
||||
| bots.slack.securityContext | object | `{"runAsNonRoot":true}` | Pod Security Context |
|
||||
| bots.slack.service.annotations | object | `{}` | Service annotations for Slack bot |
|
||||
| bots.slack.service.port | int | `80` | Service port for Slack bot |
|
||||
| bots.slack.service.type | string | `"LoadBalancer"` | Service type for Slack bot |
|
||||
| bots.slack.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| bots.slack.serviceAccount.create | bool | `true` | Specifies whether a service account should be created |
|
||||
| bots.slack.serviceAccount.name | string | `"argocd-notifications-bot"` | The name of the service account to use. |
|
||||
| bots.slack.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| bots.slack.updateStrategy | object | `{"type":"Recreate"}` | The deployment strategy to use to replace existing pods with new ones |
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
|
||||
[affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
|
||||
[Node selector]: https://kubernetes.io/docs/user-guide/node-selection/
|
||||
[Tolerations]: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
||||
[values.yaml]: values.yaml
|
|
@ -1,45 +0,0 @@
|
|||
## ArgoCD Notifications Chart
|
||||
|
||||
This is a **community maintained** chart. It installs the [argocd-notifications](https://github.com/argoproj-labs/argocd-notifications) application. This application comes packaged with:
|
||||
- Notifications Controller Deployment
|
||||
- Notifications Controller ConfigMap
|
||||
- Notifications Controller Secret
|
||||
- Service Account
|
||||
- Roles
|
||||
- Role Bindings
|
||||
|
||||
To regenerate this document, from the root of this chart directory run:
|
||||
|
||||
```console
|
||||
docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:latest
|
||||
```
|
||||
|
||||
## Values
|
||||
|
||||
### General parameters
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
{{- range .Values }}
|
||||
{{- if not (hasPrefix "bots" .Key) }}
|
||||
| {{ .Key }} | {{ .Type }} | {{ if .Default }}{{ .Default }}{{ else }}{{ .AutoDefault }}{{ end }} | {{ if .Description }}{{ .Description }}{{ else }}{{ .AutoDescription }}{{ end }} |
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
### Bots
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
{{- range .Values }}
|
||||
{{- if hasPrefix "bots" .Key }}
|
||||
| {{ .Key }} | {{ .Type }} | {{ if .Default }}{{ .Default }}{{ else }}{{ .AutoDefault }}{{ end }} | {{ if .Description }}{{ .Description }}{{ else }}{{ .AutoDescription }}{{ end }} |
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
|
||||
[affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
|
||||
[Node selector]: https://kubernetes.io/docs/user-guide/node-selection/
|
||||
[Tolerations]: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
||||
[values.yaml]: values.yaml
|
|
@ -1,138 +0,0 @@
|
|||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "argocd-notifications.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "argocd-notifications.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "argocd-notifications.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "argocd-notifications.labels" -}}
|
||||
helm.sh/chart: {{ include "argocd-notifications.chart" . }}
|
||||
{{ include "argocd-notifications.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common metrics labels
|
||||
*/}}
|
||||
{{- define "argocd-notifications.metrics.labels" -}}
|
||||
helm.sh/chart: {{ include "argocd-notifications.chart" . }}
|
||||
{{ include "argocd-notifications.metrics.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
{{/*
|
||||
Common slack bot labels
|
||||
*/}}
|
||||
{{- define "argocd-notifications.bots.slack.labels" -}}
|
||||
helm.sh/chart: {{ include "argocd-notifications.chart" . }}
|
||||
{{ include "argocd-notifications.bots.slack.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "argocd-notifications.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "argocd-notifications.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Selector metrics labels
|
||||
*/}}
|
||||
{{- define "argocd-notifications.metrics.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "argocd-notifications.name" . }}-metrics
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Selector slack bot labels
|
||||
*/}}
|
||||
{{- define "argocd-notifications.bots.slack.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "argocd-notifications.name" . }}-bot
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "argocd-notifications.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
{{ default (include "argocd-notifications.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the bot service account to use
|
||||
*/}}
|
||||
{{- define "argocd-notifications.bots.slack.serviceAccountName" -}}
|
||||
{{- if .Values.bots.slack.serviceAccount.create -}}
|
||||
{{ default (printf "%s-bot" (include "argocd-notifications.fullname" .)) .Values.bots.slack.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.bots.slack.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the secret to use
|
||||
*/}}
|
||||
{{- define "argocd-notifications.secretName" -}}
|
||||
{{- if .Values.secret.create -}}
|
||||
{{ default (printf "%s-secret" (include "argocd-notifications.fullname" .)) .Values.secret.name }}
|
||||
{{- else -}}
|
||||
{{ default "argocd-notifications-secret" .Values.secret.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
{{/*
|
||||
Create the name of the configmap to use
|
||||
*/}}
|
||||
{{- define "argocd-notifications.configMapName" -}}
|
||||
{{- if .Values.cm.create -}}
|
||||
{{ default (printf "%s-cm" (include "argocd-notifications.fullname" .)) .Values.cm.name }}
|
||||
{{- else -}}
|
||||
{{ default "argocd-notifications-cm" .Values.cm.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
|
@ -1,55 +0,0 @@
|
|||
{{ if .Values.bots.slack.enabled }}
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-bot
|
||||
labels:
|
||||
{{- include "argocd-notifications.bots.slack.labels" . | nindent 4 }}
|
||||
spec:
|
||||
strategy:
|
||||
{{- .Values.bots.slack.updateStrategy | toYaml | nindent 4 }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argocd-notifications.bots.slack.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
{{- include "argocd-notifications.bots.slack.selectorLabels" . | nindent 8 }}
|
||||
spec:
|
||||
{{- with .Values.bots.slack.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argocd-notifications.bots.slack.serviceAccountName" . }}
|
||||
{{- with .Values.bots.slack.securityContext }}
|
||||
securityContext: {{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ include "argocd-notifications.name" . }}-bot
|
||||
image: "{{ .Values.bots.slack.image.repository }}:{{ default .Chart.AppVersion .Values.bots.slack.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.bots.slack.image.pullPolicy }}
|
||||
resources:
|
||||
{{- toYaml .Values.bots.slack.resources | nindent 12 }}
|
||||
command:
|
||||
- /app/argocd-notifications-backend
|
||||
- bot
|
||||
workingDir: /app
|
||||
ports:
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
{{- with .Values.bots.slack.containerSecurityContext }}
|
||||
securityContext: {{- toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- with .Values.bots.slack.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.bots.slack.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.bots.slack.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{ end }}
|
|
@ -1,27 +0,0 @@
|
|||
{{ if .Values.bots.slack.enabled }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-bot
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- secrets
|
||||
- configmaps
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- applications
|
||||
- appprojects
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- update
|
||||
- patch
|
||||
{{ end }}
|
|
@ -1,13 +0,0 @@
|
|||
{{ if .Values.bots.slack.enabled }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-bot
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ include "argocd-notifications.name" . }}-bot
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "argocd-notifications.bots.slack.serviceAccountName" . }}
|
||||
{{ end }}
|
|
@ -1,19 +0,0 @@
|
|||
{{ if .Values.bots.slack.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-bot
|
||||
{{- if .Values.bots.slack.service.annotations }}
|
||||
annotations:
|
||||
{{- toYaml .Values.bots.slack.service.annotations | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.bots.slack.service.port }}
|
||||
protocol: TCP
|
||||
targetPort: http
|
||||
selector:
|
||||
{{- include "argocd-notifications.bots.slack.selectorLabels" . | nindent 4 }}
|
||||
type: {{ .Values.bots.slack.service.type }}
|
||||
{{ end }}
|
|
@ -1,12 +0,0 @@
|
|||
{{- if .Values.bots.slack.serviceAccount.create }}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.bots.slack.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "argocd-notifications.bots.slack.labels" . | nindent 4 }}
|
||||
{{- with .Values.bots.slack.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{ end }}
|
||||
{{ end }}
|
|
@ -1,27 +0,0 @@
|
|||
{{ if .Values.cm.create }}
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.configMapName" . }}
|
||||
labels:
|
||||
{{- include "argocd-notifications.labels" . | nindent 4 }}
|
||||
data:
|
||||
context: |
|
||||
argocdUrl: {{ .Values.argocdUrl | quote }}
|
||||
{{- with .Values.context }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifiers }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
{{- with .Values.subscriptions }}
|
||||
subscriptions: |
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.templates }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
{{- with .Values.triggers }}
|
||||
{{- toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,77 +0,0 @@
|
|||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-controller
|
||||
labels:
|
||||
{{- include "argocd-notifications.labels" . | nindent 4 }}
|
||||
spec:
|
||||
strategy:
|
||||
{{- .Values.updateStrategy | toYaml | nindent 4 }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argocd-notifications.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
{{- if .Values.podAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.podAnnotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argocd-notifications.selectorLabels" . | nindent 8 }}
|
||||
{{- with .Values.podLabels }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ include "argocd-notifications.serviceAccountName" . }}
|
||||
{{- if .Values.securityContext }}
|
||||
securityContext: {{- toYaml .Values.securityContext | nindent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ include "argocd-notifications.name" . }}-controller
|
||||
image: "{{ .Values.image.repository }}:{{ default .Chart.AppVersion .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
command:
|
||||
- /app/argocd-notifications-backend
|
||||
- controller
|
||||
- --loglevel={{ .Values.logLevel }}
|
||||
{{- if .Values.metrics.enabled }}
|
||||
- --metrics-port={{ .Values.metrics.port }}
|
||||
{{- end }}
|
||||
- --secret-name={{ include "argocd-notifications.secretName" . }}
|
||||
- --config-map-name={{ include "argocd-notifications.configMapName" . }}
|
||||
{{- range .Values.extraArgs }}
|
||||
- {{ . | squote }}
|
||||
{{- end }}
|
||||
workingDir: /app
|
||||
ports:
|
||||
{{- if .Values.metrics.enabled }}
|
||||
- containerPort: {{ .Values.metrics.port }}
|
||||
name: metrics
|
||||
protocol: TCP
|
||||
{{- end }}
|
||||
{{- if .Values.containerSecurityContext }}
|
||||
securityContext: {{- toYaml .Values.containerSecurityContext | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- with .Values.extraEnv }}
|
||||
env: {{ toYaml . | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- with .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.affinity }}
|
||||
affinity:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- with .Values.tolerations }}
|
||||
tolerations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
|
@ -1,42 +0,0 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-controller
|
||||
labels:
|
||||
{{- include "argocd-notifications.labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- argoproj.io
|
||||
resources:
|
||||
- applications
|
||||
- appprojects
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- update
|
||||
- patch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
- secrets
|
||||
verbs:
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resourceNames:
|
||||
- {{ include "argocd-notifications.name" . }}-cm
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- ""
|
||||
resourceNames:
|
||||
- {{ include "argocd-notifications.name" . }}-secret
|
||||
resources:
|
||||
- secrets
|
||||
verbs:
|
||||
- get
|
|
@ -1,13 +0,0 @@
|
|||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-controller
|
||||
labels:
|
||||
{{- include "argocd-notifications.labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ include "argocd-notifications.name" . }}-controller
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "argocd-notifications.serviceAccountName" . }}
|
|
@ -1,19 +0,0 @@
|
|||
{{ if .Values.secret.create }}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.secretName" . }}
|
||||
labels:
|
||||
{{- include "argocd-notifications.labels" . | nindent 4 }}
|
||||
{{- if .Values.secret.annotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := .Values.secret.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
type: Opaque
|
||||
stringData:
|
||||
{{- with .Values.secret.items }}
|
||||
{{ toYaml . | nindent 2 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,22 +0,0 @@
|
|||
{{- if .Values.metrics.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-metrics
|
||||
labels:
|
||||
{{- include "argocd-notifications.metrics.labels" . | nindent 4 }}
|
||||
{{- with .Values.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.metrics.service.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
selector:
|
||||
{{- include "argocd-notifications.selectorLabels" . | nindent 4 }}
|
||||
ports:
|
||||
- name: metrics
|
||||
port: {{ .Values.metrics.port }}
|
||||
targetPort: {{ .Values.metrics.port }}
|
||||
{{- end }}
|
|
@ -1,12 +0,0 @@
|
|||
{{- if .Values.serviceAccount.create }}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.serviceAccountName" . }}
|
||||
labels:
|
||||
{{- include "argocd-notifications.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -1,30 +0,0 @@
|
|||
{{- if and .Values.metrics.enabled .Values.metrics.serviceMonitor.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "argocd-notifications.name" . }}-metrics
|
||||
{{- if .Values.metrics.serviceMonitor.namespace }}
|
||||
namespace: {{ .Values.metrics.serviceMonitor.namespace }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "argocd-notifications.metrics.labels" . | nindent 4 }}
|
||||
{{- if .Values.metrics.serviceMonitor.additionalLabels }}
|
||||
{{- toYaml .Values.metrics.serviceMonitor.additionalLabels | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
endpoints:
|
||||
- port: metrics
|
||||
path: /metrics
|
||||
{{- if .Values.metrics.serviceMonitor.interval }}
|
||||
interval: {{ .Values.metrics.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
{{- if .Values.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scrapeTimeout: {{ .Values.metrics.serviceMonitor.scrapeTimeout }}
|
||||
{{- end }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "argocd-notifications.metrics.selectorLabels" . | nindent 6 }}
|
||||
{{- end }}
|
|
@ -1,454 +0,0 @@
|
|||
# -- 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: {}
|
Loading…
Reference in New Issue