func BuildCronJob()

in internal/testhelpers/resources.go [314:340]


func BuildCronJob(name types.NamespacedName, appLabel string) *batchv1.CronJob {
	job := &batchv1.CronJob{
		TypeMeta: metav1.TypeMeta{Kind: "CronJob", APIVersion: "batch/v1"},
		ObjectMeta: metav1.ObjectMeta{
			Name:      name.Name,
			Namespace: name.Namespace,
			Labels:    map[string]string{"app": appLabel},
		},
		Spec: batchv1.CronJobSpec{
			Schedule: "* * * * *",
			JobTemplate: batchv1.JobTemplateSpec{
				Spec: batchv1.JobSpec{
					Template: buildPodTemplateSpec(60, appLabel),
				},
			},
		},
	}
	job.Spec.JobTemplate.Spec.Template.Spec.RestartPolicy = corev1.RestartPolicyNever
	podCmd := fmt.Sprintf("echo Container 1 is Running \n"+
		"sleep %d \n"+
		"for url in $CSQL_PROXY_QUIT_URLS ; do \n"+
		"   wget --post-data '' $url \n"+
		"done", 30)
	job.Spec.JobTemplate.Spec.Template.Spec.Containers[0].Command = []string{"sh", "-c", podCmd}
	return job

}