From 65f56a7750176807aa374c8b721b9d76a8f85fd5 Mon Sep 17 00:00:00 2001 From: Usama Ahmad Date: Fri, 13 Dec 2019 14:53:37 +0500 Subject: [PATCH 1/4] update docs for service labels --- kibana/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kibana/README.md b/kibana/README.md index 556e303b0..23b1d81ff 100644 --- a/kibana/README.md +++ b/kibana/README.md @@ -79,7 +79,7 @@ helm install --name kibana elastic/kibana --set imageTag=7.5.0 | `nodeSelector` | Configurable [nodeSelector](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector) so that you can target specific nodes for your Kibana instances | `{}` | | `tolerations` | Configurable [tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) | `[]` | | `ingress` | Configurable [ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) to expose the Kibana service. See [`values.yaml`](./values.yaml) for an example | `enabled: false` | -| `service` | Configurable [service](https://kubernetes.io/docs/concepts/services-networking/service/) to expose the Kibana service. See [`values.yaml`](./values.yaml) for an example | `type: ClusterIP`
`port: 5601`
`nodePort:`
`annotations: {}` | +| `service` | Configurable [service](https://kubernetes.io/docs/concepts/services-networking/service/) to expose the Kibana service. See [`values.yaml`](./values.yaml) for an example | `type: ClusterIP`
`port: 5601`
`nodePort:`
`labels: {}`
`annotations: {}` | | `labels` | Configurable [label](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/) applied to all Kibana pods | `{}` | | `lifecycle` | Allows you to add lifecycle configuration. See [values.yaml](./values.yaml) for an example of the formatting. | `{}` | | `fullnameOverride` | Overrides the full name of the resources. If not set the name will default to "`.Release.Name`-`.Values.nameOverride or .Chart.Name`" | `""` | From 5675c049b0fedbea2ed7a12f741c7fb084038898 Mon Sep 17 00:00:00 2001 From: Usama Ahmad Date: Fri, 13 Dec 2019 14:53:55 +0500 Subject: [PATCH 2/4] add support for service labels --- kibana/templates/service.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/kibana/templates/service.yaml b/kibana/templates/service.yaml index 1e774cffe..c996471af 100644 --- a/kibana/templates/service.yaml +++ b/kibana/templates/service.yaml @@ -7,6 +7,9 @@ metadata: app: {{ .Chart.Name }} release: {{ .Release.Name | quote }} heritage: {{ .Release.Service }} +{{- if .Values.service.labels }} +{{ toYaml .Values.service.labels | indent 4}} +{{- end }} {{- with .Values.service.annotations }} annotations: {{ toYaml . | indent 4 }} From 53bae7aa3edc349cf701ce8c1e8b68f627df78b8 Mon Sep 17 00:00:00 2001 From: Usama Ahmad Date: Fri, 13 Dec 2019 14:54:48 +0500 Subject: [PATCH 3/4] default values for labels --- kibana/values.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/kibana/values.yaml b/kibana/values.yaml index c67ba204a..947e47dd7 100755 --- a/kibana/values.yaml +++ b/kibana/values.yaml @@ -85,6 +85,7 @@ service: type: ClusterIP port: 5601 nodePort: "" + labels: {} annotations: {} # cloud.google.com/load-balancer-type: "Internal" # service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0 From 45c6707db9294c4450431398f73a131f1eb76847 Mon Sep 17 00:00:00 2001 From: Usama Ahmad Date: Fri, 13 Dec 2019 14:55:00 +0500 Subject: [PATCH 4/4] add test for service labels --- kibana/tests/kibana_test.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/kibana/tests/kibana_test.py b/kibana/tests/kibana_test.py index afc37e8fd..385faf0f9 100644 --- a/kibana/tests/kibana_test.py +++ b/kibana/tests/kibana_test.py @@ -287,6 +287,22 @@ def test_priority_class_name(): priority_class_name = r['deployment'][name]['spec']['template']['spec']['priorityClassName'] assert priority_class_name == "highest" +def test_service_labels(): + config = '' + + r = helm_template(config) + + assert 'label1' not in r['service'][name]['metadata']['labels'] + + config = ''' + service: + labels: + label1: value1 + ''' + + r = helm_template(config) + + assert r['service'][name]['metadata']['labels']['label1'] == 'value1' def test_service_annotatations(): config = '''