{{- include "bjw-s.common.loader.init" . }} {{ if .Values.enableRbac }} {{- $serviceAccountName := include "bjw-s.common.lib.chart.names.serviceAccountName" . -}} --- apiVersion: v1 kind: Secret type: kubernetes.io/service-account-token metadata: name: {{ $serviceAccountName }} {{- with (merge (.Values.labels | default dict) (include "bjw-s.common.lib.metadata.allLabels" $ | fromYaml)) }} labels: {{- toYaml . | nindent 4 }} {{- end }} annotations: kubernetes.io/service-account.name: {{ $serviceAccountName }} --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: {{ $serviceAccountName }} {{- with (merge (.Values.labels | default dict) (include "bjw-s.common.lib.metadata.allLabels" $ | fromYaml)) }} labels: {{- toYaml . | nindent 4 }} {{- end }} {{- with (merge (.Values.annotations | default dict) (include "bjw-s.common.lib.metadata.globalAnnotations" $ | fromYaml)) }} annotations: {{- toYaml . | nindent 4 }} {{- end }} rules: - apiGroups: - "" resources: - namespaces - pods - nodes verbs: - get - list - apiGroups: - extensions - networking.k8s.io resources: - ingresses verbs: - get - list - apiGroups: - metrics.k8s.io resources: - nodes - pods verbs: - get - list --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: {{ $serviceAccountName }} {{- with (merge (.Values.labels | default dict) (include "bjw-s.common.lib.metadata.allLabels" $ | fromYaml)) }} labels: {{- toYaml . | nindent 4 }} {{- end }} {{- with (merge (.Values.annotations | default dict) (include "bjw-s.common.lib.metadata.globalAnnotations" $ | fromYaml)) }} annotations: {{- toYaml . | nindent 4 }} {{- end }} roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: {{ $serviceAccountName }} subjects: - kind: ServiceAccount name: {{ $serviceAccountName }} namespace: {{ .Release.Namespace }} {{ end }}