У меня есть пост-апгрейдное задание helm hook, которое монтирует 2 PV Claims и копирует данные из одного PVC в другой. Однако при некоторых условиях определенный PVC может отсутствовать. Когда я запускаю этот хук, задание создается, но находится в состоянии «Ожидание», даже несмотря на то, что PVC отсутствует. Есть ли способы пометить эту работу как неудачную и двигаться дальше?
apiVersion: batch/v1
kind: Job
metadata:
name: pvc-rsync
spec:
template:
metadata:
name: rsync
spec:
containers:
- name:pvc-rsync
image: mrsync:latest
imagePullPolicy: Always
volumeMounts:
- name: source
mountPath: /srcd
- name: destination
mountPath: /dest
restartPolicy: OnFailure
volumes:
- name: source
persistentVolumeClaim:
claimName: foo
- name: destination
persistentVolumeClaim:
claimName: blah
Команда описания показывает, что
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedScheduling 3m (x25 over 4m) default-scheduler persistentvolumeclaim "foo" not found
Я хотел бы сделать одну из двух вещей: 1. Динамически определить, что PVC отсутствует 2. Выйти из задания, чтобы оно имело тот же смысл.