Support handling of pod failures with respect to the specified rules

This commit is contained in:
Michal Wozniak
2022-08-04 08:21:32 +02:00
parent c8edeab234
commit bf9ce70de3
43 changed files with 5934 additions and 127 deletions

View File

@@ -18,6 +18,7 @@ package v1
import (
batchv1 "k8s.io/api/batch/v1"
corev1 "k8s.io/api/core/v1"
"k8s.io/apimachinery/pkg/runtime"
utilpointer "k8s.io/utils/pointer"
)
@@ -50,6 +51,17 @@ func SetDefaults_Job(obj *batchv1.Job) {
if obj.Spec.Suspend == nil {
obj.Spec.Suspend = utilpointer.BoolPtr(false)
}
if obj.Spec.PodFailurePolicy != nil {
for _, rule := range obj.Spec.PodFailurePolicy.Rules {
if rule.OnPodConditions != nil {
for i, pattern := range rule.OnPodConditions {
if pattern.Status == "" {
rule.OnPodConditions[i].Status = corev1.ConditionTrue
}
}
}
}
}
}
func SetDefaults_CronJob(obj *batchv1.CronJob) {