{{- if eq (.Values.controllerManager.enabled | toString) "true" }} apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: {{ include "spire-controller-manager.fullname" . }}-leader-election namespace: {{ include "spire-server.namespace" . }} rules: - apiGroups: [""] resources: ["configmaps"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] - apiGroups: ["coordination.k8s.io"] resources: ["leases"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] - apiGroups: [""] resources: ["events"] verbs: ["create", "patch"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: {{ include "spire-controller-manager.fullname" . }}-leader-election namespace: {{ include "spire-server.namespace" . }} roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: {{ include "spire-controller-manager.fullname" . }}-leader-election subjects: - kind: ServiceAccount name: {{ include "spire-server.serviceAccountName" . }} namespace: {{ include "spire-server.namespace" . }} --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: {{ .Release.Namespace }}-{{ include "spire-controller-manager.fullname" . }} rules: - apiGroups: [""] resources: ["namespaces"] verbs: ["get", "list", "watch"] - apiGroups: ["admissionregistration.k8s.io"] resources: ["validatingwebhookconfigurations"] verbs: ["get", "list", "patch", "watch"] - apiGroups: [""] resources: ["nodes"] verbs: ["get", "list", "watch"] - apiGroups: [""] resources: ["endpoints"] verbs: ["get", "list", "watch"] - apiGroups: [""] resources: ["pods"] verbs: ["get", "list", "watch"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterfederatedtrustdomains"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterfederatedtrustdomains/finalizers"] verbs: ["update"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterfederatedtrustdomains/status"] verbs: ["get", "patch", "update"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterspiffeids"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterspiffeids/finalizers"] verbs: ["update"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterspiffeids/status"] verbs: ["get", "patch", "update"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterstaticentries"] verbs: ["create", "delete", "get", "list", "patch", "update", "watch"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterstaticentries/finalizers"] verbs: ["update"] - apiGroups: ["spire.spiffe.io"] resources: ["clusterstaticentries/status"] verbs: ["get", "patch", "update"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: {{ .Release.Namespace }}-{{ include "spire-controller-manager.fullname" . }} roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: {{ .Release.Namespace}}-{{ include "spire-controller-manager.fullname" . }} subjects: - kind: ServiceAccount name: {{ include "spire-server.serviceAccountName" . }} namespace: {{ include "spire-server.namespace" . }} {{- end }}