{{- $oc4 := and .Values.openshift (semverCompare ">=1.12-0" (substr 1 -1 .Capabilities.KubeVersion.GitVersion)) -}} {{- $oc3 := and .Values.openshift (not $oc4) (semverCompare ">=1.9-0" (substr 1 -1 .Capabilities.KubeVersion.GitVersion)) -}} {{- if $oc3 }} apiVersion: authorization.openshift.io/v1 {{- else if (semverCompare ">=1.8-0" (substr 1 -1 .Capabilities.KubeVersion.GitVersion)) }} apiVersion: rbac.authorization.k8s.io/v1 {{- else }} apiVersion: v1 {{- end }} kind: Role metadata: name: neuvector-binding-secret namespace: {{ .Release.Namespace }} labels: chart: {{ template "neuvector.chart" . }} release: {{ .Release.Name }} rules: - apiGroups: - "" resources: - secrets verbs: - get - list - watch --- {{- if .Values.internal.autoGenerateCert }} {{- if $oc3 }} apiVersion: authorization.openshift.io/v1 {{- else if (semverCompare ">=1.8-0" (substr 1 -1 .Capabilities.KubeVersion.GitVersion)) }} apiVersion: rbac.authorization.k8s.io/v1 {{- else }} apiVersion: v1 {{- end }} kind: Role metadata: name: neuvector-binding-lease namespace: {{ .Release.Namespace }} labels: chart: {{ template "neuvector.chart" . }} release: {{ .Release.Name }} rules: - apiGroups: - coordination.k8s.io resources: - leases verbs: - create - get - update --- {{- if $oc3 }} apiVersion: authorization.openshift.io/v1 {{- else if (semverCompare ">=1.8-0" (substr 1 -1 .Capabilities.KubeVersion.GitVersion)) }} apiVersion: rbac.authorization.k8s.io/v1 {{- else }} apiVersion: v1 {{- end }} kind: Role metadata: name: neuvector-binding-job-creation namespace: {{ .Release.Namespace }} labels: chart: {{ template "neuvector.chart" . }} release: {{ .Release.Name }} rules: - apiGroups: - batch resources: - jobs verbs: - create - get - delete - apiGroups: - batch resources: - cronjobs - cronjobs/finalizers verbs: - update - patch --- {{- if $oc3 }} apiVersion: authorization.openshift.io/v1 {{- else if (semverCompare ">=1.8-0" (substr 1 -1 .Capabilities.KubeVersion.GitVersion)) }} apiVersion: rbac.authorization.k8s.io/v1 {{- else }} apiVersion: v1 {{- end }} kind: Role metadata: name: neuvector-binding-cert-upgrader namespace: {{ .Release.Namespace }} labels: chart: {{ template "neuvector.chart" . }} release: {{ .Release.Name }} rules: - apiGroups: - "" resources: - secrets verbs: - get - update - list - watch - apiGroups: - "" resources: - pods verbs: - get - list - apiGroups: - "apps" resources: - deployments - daemonsets verbs: - get - list - watch - apiGroups: - batch resources: - cronjobs verbs: - update {{- end }}