feat(argo-cd): Add probes for ApplicationSet controller (#1532)
Signed-off-by: Petr Drastil <petr.drastil@gmail.com>
This commit is contained in:
parent
3eaad42bb4
commit
38a895706d
4 changed files with 64 additions and 2 deletions
|
@ -2,7 +2,7 @@ apiVersion: v2
|
||||||
appVersion: v2.5.0
|
appVersion: v2.5.0
|
||||||
description: A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
|
description: A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
|
||||||
name: argo-cd
|
name: argo-cd
|
||||||
version: 5.8.7
|
version: 5.9.0
|
||||||
home: https://github.com/argoproj/argo-helm
|
home: https://github.com/argoproj/argo-helm
|
||||||
icon: https://argo-cd.readthedocs.io/en/stable/assets/logo.png
|
icon: https://argo-cd.readthedocs.io/en/stable/assets/logo.png
|
||||||
sources:
|
sources:
|
||||||
|
@ -22,4 +22,4 @@ dependencies:
|
||||||
condition: redis-ha.enabled
|
condition: redis-ha.enabled
|
||||||
annotations:
|
annotations:
|
||||||
artifacthub.io/changes: |
|
artifacthub.io/changes: |
|
||||||
- "[Fixed]: Type conversion for ConfigMap values"
|
- "[Added]: Optional probes for ApplicationSet controller"
|
||||||
|
|
|
@ -929,6 +929,12 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
||||||
| applicationSet.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the application set controller |
|
| applicationSet.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the application set controller |
|
||||||
| applicationSet.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the application set controller |
|
| applicationSet.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the application set controller |
|
||||||
| applicationSet.imagePullSecrets | list | `[]` (defaults to global.imagePullSecrets) | If defined, uses a Secret to pull an image from a private Docker registry or repository. |
|
| applicationSet.imagePullSecrets | list | `[]` (defaults to global.imagePullSecrets) | If defined, uses a Secret to pull an image from a private Docker registry or repository. |
|
||||||
|
| applicationSet.livenessProbe.enabled | bool | `false` | Enable Kubernetes liveness probe for ApplicationSet controller |
|
||||||
|
| applicationSet.livenessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||||
|
| applicationSet.livenessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||||
|
| applicationSet.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||||
|
| applicationSet.livenessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||||
|
| applicationSet.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||||
| applicationSet.logFormat | string | `""` (defaults to global.logging.format) | ApplicationSet controller log format. Either `text` or `json` |
|
| applicationSet.logFormat | string | `""` (defaults to global.logging.format) | ApplicationSet controller log format. Either `text` or `json` |
|
||||||
| applicationSet.logLevel | string | `""` (defaults to global.logging.level) | ApplicationSet controller log level. One of: `debug`, `info`, `warn`, `error` |
|
| applicationSet.logLevel | string | `""` (defaults to global.logging.level) | ApplicationSet controller log level. One of: `debug`, `info`, `warn`, `error` |
|
||||||
| applicationSet.metrics.enabled | bool | `false` | Deploy metrics service |
|
| applicationSet.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||||
|
@ -957,6 +963,12 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
||||||
| applicationSet.podLabels | object | `{}` | Labels for the controller pods |
|
| applicationSet.podLabels | object | `{}` | Labels for the controller pods |
|
||||||
| applicationSet.podSecurityContext | object | `{}` | Pod Security Context |
|
| applicationSet.podSecurityContext | object | `{}` | Pod Security Context |
|
||||||
| applicationSet.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. |
|
| applicationSet.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. |
|
||||||
|
| applicationSet.readinessProbe.enabled | bool | `false` | Enable Kubernetes liveness probe for ApplicationSet controller |
|
||||||
|
| applicationSet.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||||
|
| applicationSet.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||||
|
| applicationSet.readinessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||||
|
| applicationSet.readinessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||||
|
| applicationSet.readinessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||||
| applicationSet.replicaCount | int | `1` | The number of ApplicationSet controller pods to run |
|
| applicationSet.replicaCount | int | `1` | The number of ApplicationSet controller pods to run |
|
||||||
| applicationSet.resources | object | `{}` | Resource limits and requests for the controller pods. |
|
| applicationSet.resources | object | `{}` | Resource limits and requests for the controller pods. |
|
||||||
| applicationSet.securityContext | object | `{}` | Security Context |
|
| applicationSet.securityContext | object | `{}` | Security Context |
|
||||||
|
|
|
@ -76,6 +76,26 @@ spec:
|
||||||
- name: webhook
|
- name: webhook
|
||||||
containerPort: 7000
|
containerPort: 7000
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
|
{{- if .Values.applicationSet.livenessProbe.enabled }}
|
||||||
|
livenessProbe:
|
||||||
|
tcpSocket:
|
||||||
|
port: probe
|
||||||
|
initialDelaySeconds: {{ .Values.applicationSet.livenessProbe.initialDelaySeconds }}
|
||||||
|
periodSeconds: {{ .Values.applicationSet.livenessProbe.periodSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.applicationSet.livenessProbe.timeoutSeconds }}
|
||||||
|
successThreshold: {{ .Values.applicationSet.livenessProbe.successThreshold }}
|
||||||
|
failureThreshold: {{ .Values.applicationSet.livenessProbe.failureThreshold }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.applicationSet.readinessProbe.enabled }}
|
||||||
|
readinessProbe:
|
||||||
|
tcpSocket:
|
||||||
|
port: probe
|
||||||
|
initialDelaySeconds: {{ .Values.applicationSet.readinessProbe.initialDelaySeconds }}
|
||||||
|
periodSeconds: {{ .Values.applicationSet.readinessProbe.periodSeconds }}
|
||||||
|
timeoutSeconds: {{ .Values.applicationSet.readinessProbe.timeoutSeconds }}
|
||||||
|
successThreshold: {{ .Values.applicationSet.readinessProbe.successThreshold }}
|
||||||
|
failureThreshold: {{ .Values.applicationSet.readinessProbe.failureThreshold }}
|
||||||
|
{{- end }}
|
||||||
resources:
|
resources:
|
||||||
{{- toYaml .Values.applicationSet.resources | nindent 12 }}
|
{{- toYaml .Values.applicationSet.resources | nindent 12 }}
|
||||||
securityContext:
|
securityContext:
|
||||||
|
|
|
@ -2173,6 +2173,36 @@ applicationSet:
|
||||||
# runAsNonRoot: true
|
# runAsNonRoot: true
|
||||||
# runAsUser: 1000
|
# runAsUser: 1000
|
||||||
|
|
||||||
|
## Probes for ApplicationSet controller (optional)
|
||||||
|
## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
|
||||||
|
readinessProbe:
|
||||||
|
# -- Enable Kubernetes liveness probe for ApplicationSet controller
|
||||||
|
enabled: false
|
||||||
|
# -- Number of seconds after the container has started before [probe] is initiated
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
# -- How often (in seconds) to perform the [probe]
|
||||||
|
periodSeconds: 10
|
||||||
|
# -- Number of seconds after which the [probe] times out
|
||||||
|
timeoutSeconds: 1
|
||||||
|
# -- Minimum consecutive successes for the [probe] to be considered successful after having failed
|
||||||
|
successThreshold: 1
|
||||||
|
# -- Minimum consecutive failures for the [probe] to be considered failed after having succeeded
|
||||||
|
failureThreshold: 3
|
||||||
|
|
||||||
|
livenessProbe:
|
||||||
|
# -- Enable Kubernetes liveness probe for ApplicationSet controller
|
||||||
|
enabled: false
|
||||||
|
# -- Number of seconds after the container has started before [probe] is initiated
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
# -- How often (in seconds) to perform the [probe]
|
||||||
|
periodSeconds: 10
|
||||||
|
# -- Number of seconds after which the [probe] times out
|
||||||
|
timeoutSeconds: 1
|
||||||
|
# -- Minimum consecutive successes for the [probe] to be considered successful after having failed
|
||||||
|
successThreshold: 1
|
||||||
|
# -- Minimum consecutive failures for the [probe] to be considered failed after having succeeded
|
||||||
|
failureThreshold: 3
|
||||||
|
|
||||||
# -- Resource limits and requests for the controller pods.
|
# -- Resource limits and requests for the controller pods.
|
||||||
resources: {}
|
resources: {}
|
||||||
# We usually recommend not to specify default resources and to leave this as a conscious
|
# We usually recommend not to specify default resources and to leave this as a conscious
|
||||||
|
|
Loading…
Reference in a new issue