apiVersion: apps/v1 kind: Deployment metadata: name: {{ template "kyoo.fullname" . }}-scanner namespace: {{ .Release.Namespace }} annotations: {{- with .Values.global.annotations }} {{- toYaml . | nindent 4 }} {{- end }} labels: {{- include "kyoo.scanner.labels" . | nindent 4 }} {{- with .Values.global.labels }} {{ toYaml . | nindent 4 }} {{- end }} spec: revisionHistoryLimit: 3 replicas: {{ .Values.scanner.replicas }} strategy: type: Recreate selector: matchLabels: {{- include "kyoo.scanner.matchLabels" . | nindent 6 }} template: metadata: labels: {{- include "kyoo.scanner.labels" . | nindent 8 }} app.kubernetes.io/component: {{ template "kyoo.name" . }}-scanner annotations: {{- with .Values.scanner.podAnnotations }} {{ toYaml . | nindent 8 }} {{- end }} spec: affinity: {{- with .Values.scanner.affinity }} {{ toYaml . | nindent 8 }} {{- end }} nodeSelector: {{- with .Values.scanner.nodeSelector }} {{ toYaml . | nindent 8 }} {{- end }} tolerations: {{- with .Values.scanner.tolerations }} {{ toYaml . | nindent 8 }} {{- end }} serviceAccountName: {{ template "kyoo.serviceAccountName" . }} securityContext: {{- with .Values.scanner.securityContext }} {{ toYaml . | nindent 8 }} {{- end }} containers: - name: {{ template "kyoo.fullname" . }}-scanner image: "{{ .Values.scanner.image.repository }}:{{ .Values.scanner.image.tag }}" imagePullPolicy: {{ .Values.scanner.image.pullPolicy }} resources: {{ toYaml .Values.scanner.resources | nindent 12 }} volumeMounts: - name: kyoo-library mountPath: "{{ .Values.persistence.library.mountPath }}" command: - scanner env: {{- with .Values.back.extraVars }} {{- toYaml . | nindent 12 }} {{- end }} - name: KYOO_URL value: http://{{ template "kyoo.fullname" . }}-back.{{ .Release.Namespace }}:{{ .Values.back.service.port }} {{- if .Values.config.secretAPIKey.existingKyooSecretKey }} - name: KYOO_APIKEYS valueFrom: secretKeyRef: name: "{{ .Values.config.secretAPIKey.existingSecretName }}" key: "{{ .Values.config.secretAPIKey.existingKyooSecretKey }}" {{- end }} {{- if .Values.config.secretAPIKey.existingTMDBSecretKey }} - name: THEMOVIEDB_APIKEY valueFrom: secretKeyRef: name: "{{ .Values.config.secretAPIKey.existingSecretName }}" key: "{{ .Values.config.secretAPIKey.existingTMDBSecretKey }}" {{- end }} - name: LIBRARY_LANGUAGES value: "{{ .Values.config.libraryLanguages }}" - name: LIBRARY_IGNORE_PATTERN value: "{{ .Values.config.libraryIgnorePattern }}" - name: SCANNER_LIBRARY_ROOT value: "{{ .Values.persistence.library.mountPath }}" - name: RABBITMQ_HOST value: {{ template "kyoo.fullname" . }}-rabbitmq - name: RABBITMQ_DEFAULT_USER value: "{{ .Values.rabbitmq.auth.username }}" - name: RABBITMQ_DEFAULT_PASS valueFrom: secretKeyRef: name: "{{ .Values.rabbitmq.auth.existingPasswordSecret }}" key: "{{ .Values.rabbitmq.auth.existingSecretPasswordKey }}" volumes: - name: kyoo-library {{- if .Values.persistence.library.enabled }} persistentVolumeClaim: claimName: {{ .Values.persistence.library.existingClaim }} {{- else }} emptyDir: {} {{- end }}