use of io.fabric8.kubernetes.api.model.batch.v1.CronJob in project kubernetes-client by fabric8io.
the class CronJobIT method update.
@Test
public void update() {
currentNamespace = session.getNamespace();
CronJob cronJob1 = client.batch().cronjobs().inNamespace(currentNamespace).withName("hello-update").edit(c -> new CronJobBuilder(c).editSpec().withSchedule("*/1 * * * *").endSpec().build());
assertEquals("*/1 * * * *", cronJob1.getSpec().getSchedule());
}
use of io.fabric8.kubernetes.api.model.batch.v1.CronJob in project kubernetes-client by fabric8io.
the class CronJobCrudTest method testCrud.
@Test
void testCrud() {
CronJob cronJob1 = new CronJobBuilder().withNewMetadata().withName("cronJob1").withResourceVersion("1").addToLabels("foo", "bar").endMetadata().withNewSpec().withSchedule("1 2-14 * * 0-1,5-6").withNewJobTemplate().withNewSpec().withNewTemplate().withNewSpec().addNewImagePullSecret().withName("gcr-secret").endImagePullSecret().addNewContainer().withName("devopsish-netlify-cronjob").withImage("gcr.io/chrisshort-net/devopsish-netlify-cron:latest").addNewEnv().withName("URL").withNewValueFrom().withNewSecretKeyRef().withName("devops-build-hook").withKey("url").endSecretKeyRef().endValueFrom().endEnv().endContainer().endSpec().endTemplate().endSpec().endJobTemplate().endSpec().build();
CronJob cronJob2 = new CronJobBuilder().withNewMetadata().withName("cronJob2").withResourceVersion("1").endMetadata().withNewSpec().withSchedule("*/1 * * * *").withNewJobTemplate().withNewSpec().withNewTemplate().withNewSpec().addNewContainer().withName("app").withImage("bitnami/kubecfg:0.5.0").addNewEnv().withName("TOKEN").withNewValueFrom().withNewSecretKeyRef().withName("default-token-rtw2m").withKey("token").endSecretKeyRef().endValueFrom().endEnv().endContainer().endSpec().endTemplate().endSpec().endJobTemplate().endSpec().build();
client.batch().cronjobs().inNamespace("ns1").create(cronJob1);
client.batch().cronjobs().inNamespace("ns2").create(cronJob2);
CronJobList cronJobList = client.batch().cronjobs().list();
assertNotNull(cronJobList);
assertEquals(0, cronJobList.getItems().size());
cronJobList = client.batch().cronjobs().inAnyNamespace().list();
assertNotNull(cronJobList);
assertEquals(2, cronJobList.getItems().size());
cronJobList = client.batch().cronjobs().inNamespace("ns1").list();
assertNotNull(cronJobList);
assertEquals(1, cronJobList.getItems().size());
cronJobList = client.batch().cronjobs().inNamespace("ns2").list();
assertNotNull(cronJobList);
assertEquals(1, cronJobList.getItems().size());
cronJobList = client.batch().cronjobs().inNamespace("ns1").withLabels(Collections.singletonMap("foo", "bar")).list();
assertNotNull(cronJobList);
assertEquals(1, cronJobList.getItems().size());
boolean bDeleted = client.batch().cronjobs().inNamespace("ns1").withName("cronJob1").delete();
cronJobList = client.batch().cronjobs().inNamespace("ns1").list();
assertTrue(bDeleted);
assertEquals(0, cronJobList.getItems().size());
cronJob2 = client.batch().cronjobs().inNamespace("ns2").withName("cronJob2").edit(c -> new CronJobBuilder(c).editSpec().withSchedule("*/1 * * * *").and().build());
assertNotNull(cronJob2);
assertEquals("*/1 * * * *", cronJob2.getSpec().getSchedule());
}
use of io.fabric8.kubernetes.api.model.batch.v1.CronJob in project kubernetes-client by fabric8io.
the class CronJobTest method testDeleteWithNamespaceMismatch.
@Test
void testDeleteWithNamespaceMismatch() {
CronJob cronjob1 = new CronJobBuilder().withNewMetadata().withName("cronjob1").withNamespace("test").and().build();
Boolean deleted = client.batch().cronjobs().inNamespace("test1").delete(cronjob1);
assertFalse(deleted);
}
use of io.fabric8.kubernetes.api.model.batch.v1.CronJob in project kubernetes-client by fabric8io.
the class CronJobTest method testGet.
@Test
void testGet() {
server.expect().withPath("/apis/batch/v1beta1/namespaces/test/cronjobs/cronjob1").andReturn(200, new CronJobBuilder().build()).once();
server.expect().withPath("/apis/batch/v1beta1/namespaces/ns1/cronjobs/cronjob2").andReturn(200, new CronJobBuilder().build()).once();
CronJob cronjob = client.batch().cronjobs().withName("cronjob1").get();
assertNotNull(cronjob);
cronjob = client.batch().cronjobs().withName("cronjob2").get();
assertNull(cronjob);
cronjob = client.batch().cronjobs().inNamespace("ns1").withName("cronjob2").get();
assertNotNull(cronjob);
}
use of io.fabric8.kubernetes.api.model.batch.v1.CronJob in project kubernetes-client by fabric8io.
the class CronJobTest method testDelete.
@Test
void testDelete() {
server.expect().withPath("/apis/batch/v1beta1/namespaces/test/cronjobs/cronJob1").andReturn(200, new CronJobBuilder().withNewMetadata().withName("cronJob1").withResourceVersion("1").endMetadata().withNewSpec().withSchedule("1 2-14 * * 0-1,5-6").withNewJobTemplate().withNewSpec().withNewTemplate().withNewSpec().addNewImagePullSecret().withName("gcr-secret").endImagePullSecret().addNewContainer().withName("devopsish-netlify-cronjob").withImage("gcr.io/chrisshort-net/devopsish-netlify-cron:latest").addNewEnv().withName("URL").withNewValueFrom().withNewSecretKeyRef().withName("devops-build-hook").withKey("url").endSecretKeyRef().endValueFrom().endEnv().endContainer().endSpec().endTemplate().endSpec().endJobTemplate().endSpec().build()).once();
server.expect().withPath("/apis/batch/v1beta1/namespaces/test/cronjobs/cronJob2").andReturn(200, new CronJobBuilder().withNewMetadata().withName("cronJob2").withResourceVersion("1").endMetadata().withNewSpec().withSchedule("*/1 * * * *").withNewJobTemplate().withNewSpec().withNewTemplate().withNewSpec().addNewContainer().withName("app").withImage("bitnami/kubecfg:0.5.0").addNewEnv().withName("TOKEN").withNewValueFrom().withNewSecretKeyRef().withName("default-token-rtw2m").withKey("token").endSecretKeyRef().endValueFrom().endEnv().endContainer().endSpec().endTemplate().endSpec().endJobTemplate().endSpec().build()).once();
Boolean deleted = client.batch().cronjobs().withName("cronJob1").delete();
assertNotNull(deleted);
assertTrue(deleted);
deleted = client.batch().cronjobs().withName("cronJob2").delete();
assertTrue(deleted);
}
Aggregations