From 5459d6ef29eb1c1f640d99b647f30df7dbd81c5e Mon Sep 17 00:00:00 2001 From: Andrea Scarpino Date: Fri, 4 Nov 2022 14:15:31 +0100 Subject: [PATCH] Allow to apply additional labels to the connect inject pods --- .../templates/connect-inject-deployment.yaml | 3 +++ .../test/unit/connect-inject-deployment.bats | 25 +++++++++++++++++++ charts/consul/values.yaml | 13 ++++++++++ 3 files changed, 41 insertions(+) diff --git a/charts/consul/templates/connect-inject-deployment.yaml b/charts/consul/templates/connect-inject-deployment.yaml index abceb0706b..aed77e70bb 100644 --- a/charts/consul/templates/connect-inject-deployment.yaml +++ b/charts/consul/templates/connect-inject-deployment.yaml @@ -35,6 +35,9 @@ spec: chart: {{ template "consul.chart" . }} release: {{ .Release.Name }} component: connect-injector + {{- if .Values.connectInject.extraLabels }} + {{- toYaml .Values.connectInject.extraLabels | nindent 8 }} + {{- end }} annotations: "consul.hashicorp.com/connect-inject": "false" {{- if .Values.connectInject.annotations }} diff --git a/charts/consul/test/unit/connect-inject-deployment.bats b/charts/consul/test/unit/connect-inject-deployment.bats index 7b275c018f..77e3c626a0 100755 --- a/charts/consul/test/unit/connect-inject-deployment.bats +++ b/charts/consul/test/unit/connect-inject-deployment.bats @@ -1217,6 +1217,31 @@ load _helpers [ "${actual}" = "name" ] } +#-------------------------------------------------------------------- +# extraLabels + +@test "connectInject/Deployment: no extra labels defined by default" { + cd `chart_dir` + local actual=$(helm template \ + -s templates/connect-inject-deployment.yaml \ + --set 'connectInject.enabled=true' \ + . | tee /dev/stderr | + yq -r '.spec.template.metadata.labels | del(."app") | del(."chart") | del(."release") | del(."component")' | tee /dev/stderr) + [ "${actual}" = "{}" ] +} + +@test "connectInject/Deployment: can set extra labels" { + cd `chart_dir` + local actual=$(helm template \ + -s templates/connect-inject-deployment.yaml \ + --set 'connectInject.enabled=true' \ + --set 'connectInject.extraLabels.foo=bar' \ + . | tee /dev/stderr | + yq -r '.spec.template.metadata.labels.foo' | tee /dev/stderr) + + [ "${actual}" = "bar" ] +} + #-------------------------------------------------------------------- # annotations diff --git a/charts/consul/values.yaml b/charts/consul/values.yaml index 28c8fc5990..23aece279f 100644 --- a/charts/consul/values.yaml +++ b/charts/consul/values.yaml @@ -2062,6 +2062,19 @@ connectInject: # Optional priorityClassName. priorityClassName: "" + # Extra labels to attach to the connect inject pods. This should be a YAML map. + # + # Example: + # + # ```yaml + # extraLabels: + # labelKey: label-value + # anotherLabelKey: another-label-value + # ``` + # + # @type: map + extraLabels: null + # This value defines additional annotations for # connect inject pods. This should be formatted as a multi-line string. #