From 284ca59ca44655975d02bcb44897c53ea7d0d935 Mon Sep 17 00:00:00 2001 From: faizanahmad055 Date: Sun, 25 Oct 2020 19:22:05 +0100 Subject: [PATCH] Add annotations, labels and documenation to support helm3 Signed-off-by: faizanahmad055 --- README.md | 8 ++++---- .../kubernetes/chart/reloader/templates/_helpers.tpl | 9 +++++++++ .../kubernetes/chart/reloader/templates/clusterrole.yaml | 2 ++ .../chart/reloader/templates/clusterrolebinding.yaml | 2 ++ .../kubernetes/chart/reloader/templates/deployment.yaml | 3 ++- .../kubernetes/chart/reloader/templates/role.yaml | 2 ++ .../kubernetes/chart/reloader/templates/rolebinding.yaml | 2 ++ .../kubernetes/chart/reloader/templates/service.yaml | 3 ++- .../chart/reloader/templates/serviceaccount.yaml | 2 ++ 9 files changed, 27 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 0c4b1d9..7117d8f 100644 --- a/README.md +++ b/README.md @@ -192,26 +192,26 @@ namespace: reloader ### Helm Charts -Alternatively if you have configured helm on your cluster, you can add reloader to helm from our public chart repository and deploy it via helm using below mentioned commands +Alternatively if you have configured helm on your cluster, you can add reloader to helm from our public chart repository and deploy it via helm using below mentioned commands. Follow [this](docs/Helm2-to-Helm3.md) guide, in case you have trouble migrating reloader from Helm2 to Helm3 ```bash helm repo add stakater https://stakater.github.io/stakater-charts helm repo update -helm install stakater/reloader +helm install stakater/reloader # For helm3 add --generate-name flag or set the release name ``` **Note:** The latest verion of reloader is using `apiVersion: rbac.authorization.k8s.io/v1` for rbac. The `apiVersion: rbac.authorization.k8s.io/v1beta1` is depreciated since kubernetes = 1.17. To run it with older versions, please use below command. ```bash -helm install stakater/reloader --set reloader.legacy.rbac=true +helm install stakater/reloader --set reloader.legacy.rbac=true # For helm3 add --generate-name flag or set the release name ``` **Note:** By default reloader watches in all namespaces. To watch in single namespace, please run following command. It will install reloader in `test` namespace which will only watch `Deployments`, `Daemonsets` and `Statefulsets` in `test` namespace. ```bash -helm install stakater/reloader --set reloader.watchGlobally=false --namespace test +helm install stakater/reloader --set reloader.watchGlobally=false --namespace test # For helm3 add --generate-name flag or set the release name ``` Reloader can be configured to ignore the resources `secrets` and `configmaps` by using the following parameters of `values.yaml` file: diff --git a/deployments/kubernetes/chart/reloader/templates/_helpers.tpl b/deployments/kubernetes/chart/reloader/templates/_helpers.tpl index d09db4b..eb7a701 100644 --- a/deployments/kubernetes/chart/reloader/templates/_helpers.tpl +++ b/deployments/kubernetes/chart/reloader/templates/_helpers.tpl @@ -25,6 +25,7 @@ app: {{ template "reloader-fullname" . }} chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" release: {{ .Release.Name | quote }} heritage: {{ .Release.Service | quote }} +app.kubernetes.io/managed-by: {{ .Release.Service | quote }} {{- end -}} {{/* @@ -37,3 +38,11 @@ Create the name of the service account to use {{ default "default" .Values.reloader.serviceAccount.name }} {{- end -}} {{- end -}} + +{{/* +Create the annotations to support helm3 +*/}} +{{- define "reloader-helm3.annotations" -}} +meta.helm.sh/release-namespace: {{ .Release.Namespace | quote }} +meta.helm.sh/release-name: {{ .Release.Name | quote }} +{{- end -}} \ No newline at end of file diff --git a/deployments/kubernetes/chart/reloader/templates/clusterrole.yaml b/deployments/kubernetes/chart/reloader/templates/clusterrole.yaml index db52339..c3f0817 100644 --- a/deployments/kubernetes/chart/reloader/templates/clusterrole.yaml +++ b/deployments/kubernetes/chart/reloader/templates/clusterrole.yaml @@ -6,6 +6,8 @@ apiVersion: rbac.authorization.k8s.io/v1 {{- end }} kind: ClusterRole metadata: + annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.rbac.labels }} diff --git a/deployments/kubernetes/chart/reloader/templates/clusterrolebinding.yaml b/deployments/kubernetes/chart/reloader/templates/clusterrolebinding.yaml index 65d5f92..fd4e341 100644 --- a/deployments/kubernetes/chart/reloader/templates/clusterrolebinding.yaml +++ b/deployments/kubernetes/chart/reloader/templates/clusterrolebinding.yaml @@ -6,6 +6,8 @@ apiVersion: rbac.authorization.k8s.io/v1 {{- end }} kind: ClusterRoleBinding metadata: + annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.rbac.labels }} diff --git a/deployments/kubernetes/chart/reloader/templates/deployment.yaml b/deployments/kubernetes/chart/reloader/templates/deployment.yaml index 1c521c0..96e3d61 100644 --- a/deployments/kubernetes/chart/reloader/templates/deployment.yaml +++ b/deployments/kubernetes/chart/reloader/templates/deployment.yaml @@ -1,8 +1,9 @@ apiVersion: apps/v1 kind: Deployment metadata: -{{- if .Values.reloader.deployment.annotations }} annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} +{{- if .Values.reloader.deployment.annotations }} {{ toYaml .Values.reloader.deployment.annotations | indent 4 }} {{- end }} labels: diff --git a/deployments/kubernetes/chart/reloader/templates/role.yaml b/deployments/kubernetes/chart/reloader/templates/role.yaml index 68263d6..81d6c66 100644 --- a/deployments/kubernetes/chart/reloader/templates/role.yaml +++ b/deployments/kubernetes/chart/reloader/templates/role.yaml @@ -6,6 +6,8 @@ apiVersion: rbac.authorization.k8s.io/v1 {{- end }} kind: Role metadata: + annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.rbac.labels }} diff --git a/deployments/kubernetes/chart/reloader/templates/rolebinding.yaml b/deployments/kubernetes/chart/reloader/templates/rolebinding.yaml index a7d2728..0a1d074 100644 --- a/deployments/kubernetes/chart/reloader/templates/rolebinding.yaml +++ b/deployments/kubernetes/chart/reloader/templates/rolebinding.yaml @@ -6,6 +6,8 @@ apiVersion: rbac.authorization.k8s.io/v1 {{- end }} kind: RoleBinding metadata: + annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.rbac.labels }} diff --git a/deployments/kubernetes/chart/reloader/templates/service.yaml b/deployments/kubernetes/chart/reloader/templates/service.yaml index 5656741..9bb9ae9 100644 --- a/deployments/kubernetes/chart/reloader/templates/service.yaml +++ b/deployments/kubernetes/chart/reloader/templates/service.yaml @@ -2,8 +2,9 @@ apiVersion: v1 kind: Service metadata: -{{- if .Values.reloader.service.annotations }} annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} +{{- if .Values.reloader.service.annotations }} {{ toYaml .Values.reloader.service.annotations | indent 4 }} {{- end }} labels: diff --git a/deployments/kubernetes/chart/reloader/templates/serviceaccount.yaml b/deployments/kubernetes/chart/reloader/templates/serviceaccount.yaml index 62e5f1a..bcee4eb 100644 --- a/deployments/kubernetes/chart/reloader/templates/serviceaccount.yaml +++ b/deployments/kubernetes/chart/reloader/templates/serviceaccount.yaml @@ -5,6 +5,8 @@ kind: ServiceAccount imagePullSecrets: {{ toYaml .Values.global.imagePullSecrets | nindent 2 }} {{- end }} metadata: + annotations: +{{ include "reloader-helm3.annotations" . | indent 4 }} labels: {{ include "reloader-labels.chart" . | indent 4 }} {{- if .Values.reloader.serviceAccount.labels }}