apiVersion: v1
kind: ServiceAccount
metadata:
  name: event-exporter 
  namespace: {{ .Release.Namespace }}
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: event-exporter 
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: view
subjects:
- kind: ServiceAccount
  name: event-exporter
  namespace: {{ .Release.Namespace }}
---
apiVersion: v1
data:
  config.yaml: |
    {{- toYaml .Values.config | nindent 4 }}
kind: ConfigMap
metadata:
  name: event-exporter-cfg
  namespace: {{ .Release.Namespace }}
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: event-exporter
  namespace: {{ .Release.Namespace }}
  labels:
    app: event-exporter
spec:
  replicas: 1
  selector:
    matchLabels:
      app: event-exporter
  template:
    metadata:
      labels:
        app: event-exporter
    spec:
      containers:
      - name: event-exporter
        image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
        imagePullPolicy: IfNotPresent
        resources:
          {{- toYaml .Values.resources | nindent 10 }}
        args:
          - -conf=/data/config.yaml
        volumeMounts:
          - mountPath: /data
            name: cfg
      serviceAccount: event-exporter
      volumes:
        - name: cfg
          configMap:
            name: event-exporter-cfg
