Skip to content

Commit 7036f27

Browse files
fix: Extract labels to helper template #707
Signed-off-by: Martin Kirchner <[email protected]>
1 parent b5d85b5 commit 7036f27

19 files changed

+61
-107
lines changed

charts/nextcloud/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
apiVersion: v2
22
name: nextcloud
3-
version: 6.6.7
3+
version: 6.6.8
44
# renovate: image=docker.io/library/nextcloud
55
appVersion: 30.0.6
66
description: A file sharing server that puts the control and security of your own data back into your hands.

charts/nextcloud/templates/_helpers.tpl

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,3 +398,37 @@ Create volume mounts for the nextcloud container as well as the cron sidecar con
398398
subPath: {{ $key }}
399399
{{- end }}
400400
{{- end -}}
401+
402+
403+
{{/*
404+
Create match labels for the nextcloud container as well as the cronjob container.
405+
Parameters:
406+
- component (optional): app/cronjob/...
407+
- rootContext: $ (Inside a template the scope changes, i.e. you cannot access variables of the parent context or its parents.
408+
Unfortunately this is also the case for the root context, this means .Values, .Release, .Chart cannot be accessed.
409+
However the other templates need values from the objects. That's why the caller has to pass on reference to the root context which this template in turn passes on.)
410+
*/}}
411+
{{- define "nextcloud.selectorLabels" -}}
412+
app.kubernetes.io/name: {{ include "nextcloud.name" .rootContext }}
413+
app.kubernetes.io/instance: {{ .rootContext.Release.Name }}
414+
{{- if .component }}
415+
app.kubernetes.io/component: {{ .component }}
416+
{{- end }}
417+
{{- end -}}
418+
419+
{{/*
420+
Create match labels for the nextcloud deployment as well as the cronjob.
421+
Parameters:
422+
- component (optional): app/cronjob/...
423+
- rootContext: $ (Inside a template the scope changes, i.e. you cannot access variables of the parent context or its parents.
424+
Unfortunately this is also the case for the root context, this means .Values, .Release, .Chart cannot be accessed.
425+
However the other templates need values from the objects. That's why the caller has to pass on reference to the root context which this template in turn passes on.)
426+
*/}}
427+
{{- define "nextcloud.labels" -}}
428+
{{ include "nextcloud.selectorLabels" ( dict "component" .component "rootContext" .rootContext) }}
429+
helm.sh/chart: {{ include "nextcloud.chart" .rootContext }}
430+
app.kubernetes.io/managed-by: {{ .rootContext.Release.Service }}
431+
{{- with .rootContext.Chart.AppVersion }}
432+
app.kubernetes.io/version: {{ quote . }}
433+
{{- end }}
434+
{{- end -}}

charts/nextcloud/templates/config.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,7 @@ kind: ConfigMap
44
metadata:
55
name: {{ template "nextcloud.fullname" . }}-config
66
labels:
7-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
8-
helm.sh/chart: {{ include "nextcloud.chart" . }}
9-
app.kubernetes.io/instance: {{ .Release.Name }}
10-
app.kubernetes.io/managed-by: {{ .Release.Service }}
7+
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
118
data:
129
{{- range $filename, $content := .Values.nextcloud.configs }}
1310
{{ $filename }}: |-

charts/nextcloud/templates/configmap-hooks.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@ kind: ConfigMap
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-hooks
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
8+
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
129
data:
1310
{{- range $hook, $shell := .Values.nextcloud.hooks }}
1411
{{- if $shell }}

charts/nextcloud/templates/db-secret.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,7 @@ kind: Secret
66
metadata:
77
name: {{ .Release.Name }}-db
88
labels:
9-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
10-
helm.sh/chart: {{ include "nextcloud.chart" . }}
11-
app.kubernetes.io/instance: {{ .Release.Name }}
12-
app.kubernetes.io/managed-by: {{ .Release.Service }}
9+
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
1310
type: Opaque
1411
data:
1512
{{- if .Values.mariadb.enabled }}

charts/nextcloud/templates/deployment.yaml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,7 @@ kind: Deployment
44
metadata:
55
name: {{ template "nextcloud.fullname" . }}
66
labels:
7-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
8-
helm.sh/chart: {{ include "nextcloud.chart" . }}
9-
app.kubernetes.io/instance: {{ .Release.Name }}
10-
app.kubernetes.io/managed-by: {{ .Release.Service }}
11-
app.kubernetes.io/component: app
7+
{{- include "nextcloud.labels" ( dict "component" "app" "rootContext" $ ) | nindent 4 }}
128
{{- with .Values.deploymentLabels }}
139
{{- toYaml . | nindent 4 }}
1410
{{- end }}
@@ -24,15 +20,11 @@ spec:
2420
{{- toYaml .Values.nextcloud.strategy | nindent 4 }}
2521
selector:
2622
matchLabels:
27-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
28-
app.kubernetes.io/instance: {{ .Release.Name }}
29-
app.kubernetes.io/component: app
23+
{{- include "nextcloud.selectorLabels" ( dict "component" "app" "rootContext" $ ) | nindent 6 }}
3024
template:
3125
metadata:
3226
labels:
33-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
34-
app.kubernetes.io/instance: {{ .Release.Name }}
35-
app.kubernetes.io/component: app
27+
{{- include "nextcloud.selectorLabels" ( dict "component" "app" "rootContext" $ ) | nindent 8 }}
3628
{{- if .Values.redis.enabled }}
3729
{{ template "nextcloud.redis.fullname" . }}-client: "true"
3830
{{- end }}

charts/nextcloud/templates/hpa.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,7 @@ kind: HorizontalPodAutoscaler
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: app
8+
{{- include "nextcloud.labels" ( dict "component" "app" "rootContext" $ ) | nindent 4 }}
139
spec:
1410
scaleTargetRef:
1511
kind: Deployment

charts/nextcloud/templates/imaginary/deployment.yaml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,26 +5,18 @@ kind: Deployment
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-imaginary
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: imaginary
8+
{{- include "nextcloud.labels" ( dict "component" "imaginary" "rootContext" $ ) | nindent 4 }}
139
spec:
1410
replicas: {{ .Values.imaginary.replicaCount }}
1511
selector:
1612
matchLabels:
17-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
18-
app.kubernetes.io/instance: {{ .Release.Name }}
19-
app.kubernetes.io/component: imaginary
13+
{{- include "nextcloud.selectorLabels" ( dict "component" "imaginary" "rootContext" $ ) | nindent 6 }}
2014
template:
2115
metadata:
2216
annotations:
2317
{{- toYaml .Values.imaginary.podAnnotations | nindent 8 }}
2418
labels:
25-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
26-
app.kubernetes.io/instance: {{ .Release.Name }}
27-
app.kubernetes.io/component: imaginary
19+
{{- include "nextcloud.selectorLabels" ( dict "component" "imaginary" "rootContext" $ ) | nindent 8 }}
2820
{{- with .Values.imaginary.podLabels }}
2921
{{- toYaml . | nindent 8 }}
3022
{{- end }}

charts/nextcloud/templates/imaginary/service.yaml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,7 @@ kind: Service
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-imaginary
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: imaginary
8+
{{- include "nextcloud.labels" ( dict "component" "imaginary" "rootContext" $ ) | nindent 4 }}
139
{{- with .Values.imaginary.service.labels }}
1410
{{- toYaml . | nindent 4 }}
1511
{{- end }}
@@ -30,7 +26,5 @@ spec:
3026
nodePort: {{ . }}
3127
{{- end }}
3228
selector:
33-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
34-
app.kubernetes.io/instance: {{ .Release.Name }}
35-
app.kubernetes.io/component: imaginary
29+
{{- include "nextcloud.selectorLabels" ( dict "component" "imaginary" "rootContext" $ ) | nindent 4 }}
3630
{{- end }}

charts/nextcloud/templates/ingress.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,7 @@ kind: Ingress
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: app
8+
{{- include "nextcloud.labels" ( dict "component" "app" "rootContext" $ ) | nindent 4 }}
139
{{- with .Values.ingress.labels }}
1410
{{- toYaml . | nindent 4 }}
1511
{{- end }}

charts/nextcloud/templates/metrics/deployment.yaml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,26 +5,18 @@ kind: Deployment
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-metrics
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: metrics
8+
{{- include "nextcloud.labels" ( dict "component" "metrics" "rootContext" $ ) | nindent 4 }}
139
spec:
1410
replicas: {{ .Values.metrics.replicaCount }}
1511
selector:
1612
matchLabels:
17-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
18-
app.kubernetes.io/instance: {{ .Release.Name }}
19-
app.kubernetes.io/component: metrics
13+
{{- include "nextcloud.selectorLabels" ( dict "component" "metrics" "rootContext" $ ) | nindent 6 }}
2014
template:
2115
metadata:
2216
annotations:
2317
{{- toYaml .Values.metrics.podAnnotations | nindent 8 }}
2418
labels:
25-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
26-
app.kubernetes.io/instance: {{ .Release.Name }}
27-
app.kubernetes.io/component: metrics
19+
{{- include "nextcloud.selectorLabels" ( dict "component" "metrics" "rootContext" $ ) | nindent 8 }}
2820
{{- with .Values.metrics.podLabels }}
2921
{{- toYaml . | nindent 8 }}
3022
{{- end }}

charts/nextcloud/templates/metrics/service.yaml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,7 @@ kind: Service
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-metrics
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: metrics
8+
{{- include "nextcloud.labels" ( dict "component" "metrics" "rootContext" $ ) | nindent 4 }}
139
{{- with .Values.metrics.service.labels }}
1410
{{- toYaml . | nindent 4 }}
1511
{{- end }}
@@ -29,7 +25,5 @@ spec:
2925
port: 9205
3026
targetPort: metrics
3127
selector:
32-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
33-
app.kubernetes.io/instance: {{ .Release.Name }}
34-
app.kubernetes.io/component: metrics
28+
{{- include "nextcloud.selectorLabels" ( dict "component" "metrics" "rootContext" $ ) | nindent 4 }}
3529
{{- end }}

charts/nextcloud/templates/metrics/servicemonitor.yaml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,15 @@ metadata:
66
name: {{ template "nextcloud.fullname" . }}
77
namespace: {{ .Values.metrics.serviceMonitor.namespace | default .Release.Namespace | quote }}
88
labels:
9-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
10-
helm.sh/chart: {{ include "nextcloud.chart" . }}
11-
app.kubernetes.io/instance: {{ .Release.Name }}
12-
app.kubernetes.io/managed-by: {{ .Release.Service }}
13-
app.kubernetes.io/component: metrics
9+
{{- include "nextcloud.labels" ( dict "component" "metrics" "rootContext" $ ) | nindent 4 }}
1410
{{- with .Values.metrics.serviceMonitor.labels }}
1511
{{- toYaml . | nindent 4 }}
1612
{{- end }}
1713
spec:
1814
jobLabel: {{ .Values.metrics.serviceMonitor.jobLabel | quote }}
1915
selector:
2016
matchLabels:
21-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
22-
app.kubernetes.io/instance: {{ .Release.Name }}
23-
app.kubernetes.io/component: metrics
17+
{{- include "nextcloud.selectorLabels" ( dict "component" "metrics" "rootContext" $ ) | nindent 6 }}
2418
namespaceSelector:
2519
{{- with .Values.metrics.serviceMonitor.namespaceSelector }}
2620
{{- toYaml . | nindent 4 }}

charts/nextcloud/templates/nextcloud-data-pvc.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,7 @@ apiVersion: v1
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-nextcloud-data
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
12-
app.kubernetes.io/component: app
8+
{{- include "nextcloud.labels" ( dict "component" "app" "rootContext" $ ) | nindent 4 }}
139
annotations:
1410
helm.sh/resource-policy: keep
1511
{{- with .Values.persistence.nextcloudData.annotations }}

charts/nextcloud/templates/nextcloud-pvc.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,7 @@ apiVersion: v1
44
metadata:
55
name: {{ template "nextcloud.fullname" . }}-nextcloud
66
labels:
7-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
8-
helm.sh/chart: {{ include "nextcloud.chart" . }}
9-
app.kubernetes.io/instance: {{ .Release.Name }}
10-
app.kubernetes.io/managed-by: {{ .Release.Service }}
11-
app.kubernetes.io/component: app
7+
{{- include "nextcloud.labels" ( dict "component" "app" "rootContext" $ ) | nindent 4 }}
128
annotations:
139
helm.sh/resource-policy: keep
1410
{{- with .Values.persistence.annotations }}

charts/nextcloud/templates/nginx-config.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@ kind: ConfigMap
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-nginxconfig
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
8+
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
129
data:
1310
{{- if .Values.nginx.config.default }}
1411
default.conf: |-

charts/nextcloud/templates/php-config.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@ kind: ConfigMap
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}-phpconfig
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
8+
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
129
data:
1310
{{- range $key, $value := .Values.nextcloud.phpConfigs }}
1411
{{ $key }}: |-

charts/nextcloud/templates/secrets.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@ kind: Secret
55
metadata:
66
name: {{ template "nextcloud.fullname" . }}
77
labels:
8-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
9-
helm.sh/chart: {{ include "nextcloud.chart" . }}
10-
app.kubernetes.io/instance: {{ .Release.Name }}
11-
app.kubernetes.io/managed-by: {{ .Release.Service }}
8+
{{- include "nextcloud.labels" ( dict "rootContext" $ ) | nindent 4 }}
129
type: Opaque
1310
data:
1411
nextcloud-username: {{ .Values.nextcloud.username | b64enc | quote }}

charts/nextcloud/templates/service.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,7 @@ metadata:
88
{{- toYaml . | nindent 4 }}
99
{{- end }}
1010
labels:
11-
app.kubernetes.io/name: {{ include "nextcloud.name" . }}
12-
helm.sh/chart: {{ include "nextcloud.chart" . }}
13-
app.kubernetes.io/instance: {{ .Release.Name }}
14-
app.kubernetes.io/managed-by: {{ .Release.Service }}
15-
app.kubernetes.io/component: app
11+
{{- include "nextcloud.labels" ( dict "component" "app" "rootContext" $ ) | nindent 4 }}
1612
spec:
1713
type: {{ .Values.service.type }}
1814
{{- if (eq .Values.service.type "LoadBalancer") }}

0 commit comments

Comments
 (0)