Skip to content

Commit 7a1eaac

Browse files
author
ZOHARGO
committed
Add Kubernetes secret RBAC support to Helm chart
Add Role and RoleBinding templates for reading Kubernetes secrets. Bump Helm chart version to 0.16.1. Fix service account name resolution in _helpers.tpl. Made-with: Cursor
1 parent fa1cd1a commit 7a1eaac

File tree

3 files changed

+32
-2
lines changed

3 files changed

+32
-2
lines changed

helm/Chart.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apiVersion: v2
22
name: sql-exporter
33
description: Database-agnostic SQL exporter for Prometheus
44
type: application
5-
version: 0.16.0
5+
version: 0.16.1
66
appVersion: 0.20.0
77
keywords:
88
- exporter

helm/templates/_helpers.tpl

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,11 @@ Common annotations
7777
Create the name of the service account to use
7878
*/}}
7979
{{- define "sql-exporter.serviceAccountName" -}}
80-
{{- dig "serviceAccount" "name" "default" .Values }}
80+
{{- if .Values.serviceAccount.create -}}
81+
{{ default (include "sql-exporter.fullname" .) .Values.serviceAccount.name }}
82+
{{- else -}}
83+
{{ default "default" .Values.serviceAccount.name }}
84+
{{- end -}}
8185
{{- end }}
8286

8387
{{- define "sql-exporter.volumes" -}}

helm/templates/serviceaccount.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,30 @@ metadata:
1414
{{- toYaml . | nindent 4 }}
1515
{{- end }}
1616
automountServiceAccountToken: {{ default "false" .Values.serviceAccount.automountServiceAccountToken }}
17+
---
18+
apiVersion: rbac.authorization.k8s.io/v1
19+
kind: Role
20+
metadata:
21+
name: {{ template "sql-exporter.fullname" . }}-secret-reader
22+
labels:
23+
{{- include "sql-exporter.labels" . | nindent 4 }}
24+
rules:
25+
- apiGroups: [""]
26+
resources: ["secrets"]
27+
verbs: ["get"]
28+
---
29+
apiVersion: rbac.authorization.k8s.io/v1
30+
kind: RoleBinding
31+
metadata:
32+
name: {{ template "sql-exporter.fullname" . }}-secret-reader
33+
labels:
34+
{{- include "sql-exporter.labels" . | nindent 4 }}
35+
roleRef:
36+
apiGroup: rbac.authorization.k8s.io
37+
kind: Role
38+
name: {{ template "sql-exporter.fullname" . }}-secret-reader
39+
subjects:
40+
- kind: ServiceAccount
41+
name: {{ template "sql-exporter.fullname" . }}
42+
namespace: {{ .Release.Namespace }}
1743
{{- end }}

0 commit comments

Comments
 (0)