feat(argo-cd): Add ability to add prometheus.io/scrape annotations (#2037)
This commit is contained in:
parent
f6d44750b8
commit
8402303bf8
9 changed files with 96 additions and 16 deletions
|
@ -3,7 +3,7 @@ appVersion: v2.7.1
|
|||
kubeVersion: ">=1.22.0-0"
|
||||
description: A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
|
||||
name: argo-cd
|
||||
version: 5.32.2
|
||||
version: 5.33.0
|
||||
home: https://github.com/argoproj/argo-helm
|
||||
icon: https://argo-cd.readthedocs.io/en/stable/assets/logo.png
|
||||
sources:
|
||||
|
@ -27,4 +27,6 @@ annotations:
|
|||
url: https://argoproj.github.io/argo-helm/pgp_keys.asc
|
||||
artifacthub.io/changes: |
|
||||
- kind: added
|
||||
description: Introduce chart signing
|
||||
description: Ability to add prometheus.io/scrape annotations to all metrics services
|
||||
- kind: added
|
||||
description: Ability to change metrics service type and clusterIP
|
||||
|
|
|
@ -394,6 +394,7 @@ NAME: my-release
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| global.addPrometheusAnnotations | bool | `false` | Add Prometheus scrape annotations to all metrics services. This can be used as an alternative to the ServiceMonitors. |
|
||||
| global.additionalLabels | object | `{}` | Common labels for the all resources |
|
||||
| global.affinity.nodeAffinity.matchExpressions | list | `[]` | Default match expressions for node affinity |
|
||||
| global.affinity.nodeAffinity.type | string | `"hard"` | Default node affinity rules. Either: `none`, `soft` or `hard` |
|
||||
|
@ -513,9 +514,11 @@ NAME: my-release
|
|||
| controller.metrics.rules.selector | object | `{}` | PrometheusRule selector |
|
||||
| controller.metrics.rules.spec | list | `[]` | PrometheusRule.Spec for the application controller |
|
||||
| controller.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| controller.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| controller.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| controller.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| controller.metrics.service.servicePort | int | `8082` | Metrics service port |
|
||||
| controller.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| controller.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| controller.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| controller.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -597,9 +600,11 @@ NAME: my-release
|
|||
| repoServer.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| repoServer.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| repoServer.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| repoServer.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| repoServer.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| repoServer.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| repoServer.metrics.service.servicePort | int | `8084` | Metrics service port |
|
||||
| repoServer.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| repoServer.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| repoServer.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| repoServer.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -731,9 +736,11 @@ NAME: my-release
|
|||
| server.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| server.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| server.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| server.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| server.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| server.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| server.metrics.service.servicePort | int | `8083` | Metrics service port |
|
||||
| server.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| server.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| server.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| server.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -1044,9 +1051,11 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| applicationSet.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| applicationSet.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| applicationSet.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| applicationSet.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| applicationSet.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| applicationSet.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| applicationSet.metrics.service.servicePort | int | `8085` | Metrics service port |
|
||||
| applicationSet.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| applicationSet.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| applicationSet.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| applicationSet.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
@ -1128,8 +1137,10 @@ If you want to use an existing Redis (eg. a managed service from a cloud provide
|
|||
| notifications.metrics.enabled | bool | `false` | Enables prometheus metrics server |
|
||||
| notifications.metrics.port | int | `9001` | Metrics port |
|
||||
| notifications.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| notifications.metrics.service.clusterIP | string | `""` | Metrics service clusterIP. `None` makes a "headless service" (no virtual IP) |
|
||||
| notifications.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| notifications.metrics.service.portName | string | `"http-metrics"` | Metrics service port name |
|
||||
| notifications.metrics.service.type | string | `"ClusterIP"` | Metrics service type |
|
||||
| notifications.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| notifications.metrics.serviceMonitor.annotations | object | `{}` | Prometheus ServiceMonitor annotations |
|
||||
| notifications.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
|
|
|
@ -9,13 +9,21 @@ metadata:
|
|||
{{- with .Values.controller.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.controller.metrics.service.annotations }}
|
||||
{{- if or .Values.controller.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.controller.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.controller.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.controller.metrics.service.type }}
|
||||
{{- if and .Values.controller.metrics.service.clusterIP (eq .Values.controller.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.controller.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.controller.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -9,13 +9,21 @@ metadata:
|
|||
{{- with .Values.applicationSet.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.applicationSet.metrics.service.annotations }}
|
||||
{{- if or .Values.applicationSet.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.applicationSet.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.applicationSet.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.applicationSet.metrics.service.type }}
|
||||
{{- if and .Values.applicationSet.metrics.service.clusterIP (eq .Values.applicationSet.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.applicationSet.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.applicationSet.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -9,13 +9,21 @@ metadata:
|
|||
{{- with .Values.notifications.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.notifications.metrics.service.annotations }}
|
||||
{{- if or .Values.notifications.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.notifications.metrics.port | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.notifications.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.notifications.metrics.service.type }}
|
||||
{{- if and .Values.notifications.metrics.service.clusterIP (eq .Values.notifications.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.notifications.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
selector:
|
||||
{{- include "argo-cd.selectorLabels" (dict "context" . "name" .Values.notifications.name) | nindent 6 }}
|
||||
ports:
|
||||
|
|
|
@ -9,13 +9,21 @@ metadata:
|
|||
{{- with .Values.repoServer.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.repoServer.metrics.service.annotations }}
|
||||
{{- if or .Values.repoServer.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.repoServer.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.repoServer.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.repoServer.metrics.service.type }}
|
||||
{{- if and .Values.repoServer.metrics.service.clusterIP (eq .Values.repoServer.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.repoServer.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.repoServer.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -9,13 +9,21 @@ metadata:
|
|||
{{- with .Values.server.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.server.metrics.service.annotations }}
|
||||
{{- if or .Values.server.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.server.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.server.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.server.metrics.service.type }}
|
||||
{{- if and .Values.server.metrics.service.clusterIP (eq .Values.server.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.server.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.server.metrics.service.portName }}
|
||||
protocol: TCP
|
||||
|
|
|
@ -10,16 +10,20 @@ metadata:
|
|||
{{- with .Values.redis.metrics.service.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.redis.metrics.service.annotations }}
|
||||
{{- if or .Values.redis.metrics.service.annotations .Values.global.addPrometheusAnnotations }}
|
||||
annotations:
|
||||
{{- range $key, $value := . }}
|
||||
{{- if .Values.global.addPrometheusAnnotations }}
|
||||
prometheus.io/port: {{ .Values.redis.metrics.service.servicePort | quote }}
|
||||
prometheus.io/scrape: "true"
|
||||
{{- end }}
|
||||
{{- range $key, $value := .Values.redis.metrics.service.annotations }}
|
||||
{{ $key }}: {{ $value | quote }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.redis.metrics.service.type }}
|
||||
{{- with .Values.redis.metrics.service.clusterIP }}
|
||||
clusterIP: {{ . }}
|
||||
{{- if and .Values.redis.metrics.service.clusterIP (eq .Values.redis.metrics.service.type "ClusterIP") }}
|
||||
clusterIP: {{ .Values.redis.metrics.service.clusterIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: {{ .Values.redis.metrics.service.portName }}
|
||||
|
|
|
@ -79,6 +79,9 @@ global:
|
|||
# -- Labels for the all deployed pods
|
||||
podLabels: {}
|
||||
|
||||
# -- Add Prometheus scrape annotations to all metrics services. This can be used as an alternative to the ServiceMonitors.
|
||||
addPrometheusAnnotations: false
|
||||
|
||||
# -- Toggle and define pod-level security context.
|
||||
# @default -- `{}` (See [values.yaml])
|
||||
securityContext: {}
|
||||
|
@ -762,6 +765,10 @@ controller:
|
|||
# -- Additional labels
|
||||
labels: []
|
||||
service:
|
||||
# -- Metrics service type
|
||||
type: ClusterIP
|
||||
# -- Metrics service clusterIP. `None` makes a "headless service" (no virtual IP)
|
||||
clusterIP: ""
|
||||
# -- Metrics service annotations
|
||||
annotations: {}
|
||||
# -- Metrics service labels
|
||||
|
@ -1773,6 +1780,10 @@ server:
|
|||
# -- Deploy metrics service
|
||||
enabled: false
|
||||
service:
|
||||
# -- Metrics service type
|
||||
type: ClusterIP
|
||||
# -- Metrics service clusterIP. `None` makes a "headless service" (no virtual IP)
|
||||
clusterIP: ""
|
||||
# -- Metrics service annotations
|
||||
annotations: {}
|
||||
# -- Metrics service labels
|
||||
|
@ -2241,6 +2252,10 @@ repoServer:
|
|||
# -- Deploy metrics service
|
||||
enabled: false
|
||||
service:
|
||||
# -- Metrics service type
|
||||
type: ClusterIP
|
||||
# -- Metrics service clusterIP. `None` makes a "headless service" (no virtual IP)
|
||||
clusterIP: ""
|
||||
# -- Metrics service annotations
|
||||
annotations: {}
|
||||
# -- Metrics service labels
|
||||
|
@ -2394,6 +2409,10 @@ applicationSet:
|
|||
# -- Deploy metrics service
|
||||
enabled: false
|
||||
service:
|
||||
# -- Metrics service type
|
||||
type: ClusterIP
|
||||
# -- Metrics service clusterIP. `None` makes a "headless service" (no virtual IP)
|
||||
clusterIP: ""
|
||||
# -- Metrics service annotations
|
||||
annotations: {}
|
||||
# -- Metrics service labels
|
||||
|
@ -2715,6 +2734,10 @@ notifications:
|
|||
# -- Metrics port
|
||||
port: 9001
|
||||
service:
|
||||
# -- Metrics service type
|
||||
type: ClusterIP
|
||||
# -- Metrics service clusterIP. `None` makes a "headless service" (no virtual IP)
|
||||
clusterIP: ""
|
||||
# -- Metrics service annotations
|
||||
annotations: {}
|
||||
# -- Metrics service labels
|
||||
|
|
Loading…
Reference in a new issue