| {{- if and .Values.preUpgradeChecker.jobEnabled .Values.preUpgradeChecker.upgradeVersionCheck}} |
| apiVersion: batch/v1 |
| kind: Job |
| metadata: |
| annotations: |
| "helm.sh/hook": pre-upgrade |
| "helm.sh/hook-delete-policy": hook-succeeded,before-hook-creation,hook-failed |
| name: longhorn-pre-upgrade |
| namespace: {{ include "release_namespace" . }} |
| labels: {{- include "longhorn.labels" . | nindent 4 }} |
| spec: |
| activeDeadlineSeconds: 900 |
| backoffLimit: 1 |
| template: |
| metadata: |
| name: longhorn-pre-upgrade |
| labels: {{- include "longhorn.labels" . | nindent 8 }} |
| spec: |
| containers: |
| - name: longhorn-pre-upgrade |
| image: {{ with (coalesce .Values.global.imageRegistry (include "registry_url" .) .Values.image.longhorn.manager.registry) }}{{ . }}/{{ end }}{{ .Values.image.longhorn.manager.repository }}:{{ .Values.image.longhorn.manager.tag }} |
| imagePullPolicy: {{ .Values.image.pullPolicy }} |
| securityContext: |
| privileged: true |
| command: |
| - longhorn-manager |
| - pre-upgrade |
| volumeMounts: |
| - name: proc |
| mountPath: /host/proc/ |
| env: |
| {{- if .Values.longhornManager.distro }} |
| - name: LONGHORN_DISTRO |
| value: {{ .Values.longhornManager.distro | quote }} |
| {{- end }} |
| - name: POD_NAMESPACE |
| valueFrom: |
| fieldRef: |
| fieldPath: metadata.namespace |
| {{- include "longhorn.timezoneEnv" . | nindent 8 }} |
| volumes: |
| - name: proc |
| hostPath: |
| path: /proc/ |
| restartPolicy: OnFailure |
| {{- with (coalesce .Values.global.imagePullSecrets .Values.privateRegistry.registrySecret) }} |
| imagePullSecrets: |
| {{- $imagePullSecrets := list }} |
| {{- if kindIs "string" . }} |
| {{- $imagePullSecrets = append $imagePullSecrets (dict "name" .) }} |
| {{- else }} |
| {{- range . }} |
| {{- if kindIs "string" . }} |
| {{- $imagePullSecrets = append $imagePullSecrets (dict "name" .) }} |
| {{- else }} |
| {{- $imagePullSecrets = append $imagePullSecrets . }} |
| {{- end }} |
| {{- end }} |
| {{- end }} |
| {{- toYaml $imagePullSecrets | nindent 8 }} |
| {{- end }} |
| serviceAccountName: longhorn-service-account |
| {{- if or .Values.global.tolerations .Values.longhornManager.tolerations .Values.global.cattle.windowsCluster.enabled }} |
| tolerations: |
| {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }} |
| {{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }} |
| {{- end }} |
| {{- if or .Values.global.tolerations .Values.longhornManager.tolerations }} |
| {{ default .Values.global.tolerations .Values.longhornManager.tolerations | toYaml | indent 6 }} |
| {{- end }} |
| {{- end }} |
| {{- if or .Values.global.nodeSelector .Values.longhornManager.nodeSelector .Values.global.cattle.windowsCluster.enabled }} |
| nodeSelector: |
| {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }} |
| {{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }} |
| {{- end }} |
| {{- if or .Values.global.nodeSelector .Values.longhornManager.nodeSelector }} |
| {{ default .Values.global.nodeSelector .Values.longhornManager.nodeSelector | toYaml | indent 8 }} |
| {{- end }} |
| {{- end }} |
| {{- end }} |