Files
helm-charts/charts/kyoo/templates/deployment-scanner.yaml
2024-04-19 04:08:55 -06:00

102 lines
3.6 KiB
YAML

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 }}
- name: KYOO_APIKEYS
valueFrom:
secretKeyRef:
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
key: "{{ .Values.config.secretAPIKey.existingKyooSecretKey }}"
- name: THEMOVIEDB_APIKEY
valueFrom:
secretKeyRef:
name: "{{ .Values.config.secretAPIKey.existingSecretName }}"
key: "{{ .Values.config.secretAPIKey.existingTMDBSecretKey }}"
- 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 }}