/
v1beta1.go
39 lines (31 loc) · 896 Bytes
/
v1beta1.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package cronjob
import (
ks "github.com/younes-bami/kube-score/domain"
"k8s.io/api/batch/v1beta1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
type CronJobV1beta1 struct {
Obj v1beta1.CronJob
Location ks.FileLocation
}
func (c CronJobV1beta1) StartingDeadlineSeconds() *int64 {
return c.Obj.Spec.StartingDeadlineSeconds
}
func (c CronJobV1beta1) BackoffLimit() *int32 {
return c.Obj.Spec.JobTemplate.Spec.BackoffLimit
}
func (c CronJobV1beta1) FileLocation() ks.FileLocation {
return c.Location
}
func (c CronJobV1beta1) GetTypeMeta() metav1.TypeMeta {
return c.Obj.TypeMeta
}
func (c CronJobV1beta1) GetObjectMeta() metav1.ObjectMeta {
return c.Obj.ObjectMeta
}
func (c CronJobV1beta1) GetPodTemplateSpec() corev1.PodTemplateSpec {
t := c.Obj.Spec.JobTemplate.Spec.Template
t.ObjectMeta.Namespace = c.Obj.ObjectMeta.Namespace
return t
}