{{- if .Values.preInstall.enabled -}} apiVersion: batch/v1 kind: Job metadata: name: {{ include "django.fullname" . }} labels: {{- include "django.labels" . | nindent 4 }} annotations: "helm.sh/hook": post-install,pre-upgrade "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded "helm.sh/hook-weight": "0" checksum/secret: {{ include (print $.Template.BasePath "/secrets.yaml") . | sha256sum }} checksum/configmap: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }} tag: "{{ .Values.image.tag }}" spec: activeDeadlineSeconds: {{ default 900 .Values.preInstall.activeDeadlineSeconds }} template: spec: {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 8 }} {{- end }} serviceAccountName: {{ include "django.serviceAccountName" . }} restartPolicy: Never containers: - name: pre-install-job image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" imagePullPolicy: {{ .Values.image.pullPolicy }} command: ["./manage.py","migrate"] env: - name: DEBUG value: "False" {{- if .Values.env.secret.DATABASE_URL }} - name: DATABASE_URL value: {{ .Values.env.secret.DATABASE_URL }} {{- end }} {{- if .Values.postgresql.enabled }} - name: DATABASE_PASSWORD valueFrom: secretKeyRef: name: {{ include "django.postgresql.fullname" . }} key: postgres-password {{- end }} - name: SECRET_KEY value: {{ required "env.secret.SECRET_KEY is a required value." .Values.env.secret.SECRET_KEY }} {{- range $k, $v := .Values.env.normal }} - name: {{ $k }} value: {{ $v | quote }} {{- end }} envFrom: - configMapRef: name: {{ include "django.fullname" . }} {{- end }}