apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{ include "karaoke-eternal.fullname" . }}
  labels:
    app: karaoke-eternal
  {{- include "karaoke-eternal.labels" . | nindent 4 }}
spec:
  replicas: {{ .Values.eternal.replicas }}
  selector:
    matchLabels:
      app: karaoke-eternal
    {{- include "karaoke-eternal.selectorLabels" . | nindent 6 }}
  template:
    metadata:
      labels:
        app: karaoke-eternal
      {{- include "karaoke-eternal.selectorLabels" . | nindent 8 }}
    spec:
      containers:
      - env:
        - name: KUBERNETES_CLUSTER_DOMAIN
          value: {{ .Values.kubernetesClusterDomain }}
        image: {{ .Values.eternal.karaokeEternal.image.repository }}:{{ .Values.eternal.karaokeEternal.image.tag
          | default .Chart.AppVersion }}
        imagePullPolicy: Always
        name: karaoke-eternal
        ports:
        - containerPort: 8080
          protocol: TCP
        resources: {}
        terminationMessagePath: /dev/termination-log
        terminationMessagePolicy: File
        volumeMounts:
        - mountPath: /mnt/karaoke
          name: songs
          subPath: K
        - mountPath: /mnt/newsongs
          name: newsongs
        - mountPath: /config
          name: karaoke-config
      dnsPolicy: ClusterFirst
      restartPolicy: Always
      schedulerName: default-scheduler
      terminationGracePeriodSeconds: 30
      volumes:
      - name: songs
        persistentVolumeClaim:
          claimName: smb-oldmusic
      - name: newsongs
        persistentVolumeClaim:
          claimName: karaoke-songs
      - name: karaoke-config
        persistentVolumeClaim:
          claimName: {{ include "karaoke-eternal.fullname" . }}-config