use of com.epam.pipeline.entity.pipeline.PipelineRun in project cloud-pipeline by epam.
the class PipelineRunDaoTest method runPipelineWithConfiguration.
@Test
public void runPipelineWithConfiguration() {
Long configurationId = 1L;
PipelineRun run = createRunWithConfigurationId(testPipeline.getId(), configurationId);
PipelineRun loadedRun = pipelineRunDao.loadPipelineRun(run.getId());
assertEquals(configurationId, loadedRun.getConfigurationId());
}
use of com.epam.pipeline.entity.pipeline.PipelineRun in project cloud-pipeline by epam.
the class PipelineRunDaoTest method loadPipelineWithEnvVars.
@Test
public void loadPipelineWithEnvVars() {
PipelineRun run = createTestPipelineRun();
PipelineRun loadedRun = pipelineRunDao.loadPipelineRun(run.getId());
assertEquals(run.getId(), loadedRun.getId());
assertEquals(run.getEnvVars(), loadedRun.getEnvVars());
}
use of com.epam.pipeline.entity.pipeline.PipelineRun in project cloud-pipeline by epam.
the class PipelineRunDaoTest method createPipelineRun.
private PipelineRun createPipelineRun(Long pipelineId, String params, TaskStatus status, Long parentRunId, Long entitiesId, Boolean isSpot, Long configurationId, List<RunSid> runSids) {
PipelineRun run = new PipelineRun();
run.setPipelineId(pipelineId);
run.setVersion(TEST_REVISION_1);
run.setStartDate(new Date());
run.setEndDate(new Date());
run.setStatus(status);
run.setCommitStatus(CommitStatus.NOT_COMMITTED);
run.setLastChangeCommitTime(new Date());
run.setPodId(TEST_POD_ID);
run.setParams(params);
run.setOwner(USER);
run.setParentRunId(parentRunId);
run.setRunSids(runSids);
run.setServiceUrl(TEST_SERVICE_URL);
RunInstance instance = new RunInstance();
instance.setSpot(isSpot);
instance.setNodeId("1");
run.setInstance(instance);
run.setEntitiesIds(Collections.singletonList(entitiesId));
run.setConfigurationId(configurationId);
pipelineRunDao.createPipelineRun(run);
return run;
}
use of com.epam.pipeline.entity.pipeline.PipelineRun in project cloud-pipeline by epam.
the class PipelineRunDaoTest method searchPipelineRuns.
@Test
public void searchPipelineRuns() {
Pipeline testPipeline2 = getPipeline();
LocalDate now = LocalDate.now();
LocalDate date = LocalDate.of(now.getYear(), now.getMonth(), 1);
PipelineRun stopped = new PipelineRun();
stopped.setPipelineId(testPipeline.getId());
stopped.setVersion(TEST_REVISION_1);
stopped.setStartDate(Date.from(date.atStartOfDay(ZoneId.systemDefault()).toInstant()));
stopped.setEndDate(stopped.getStartDate());
stopped.setStatus(TaskStatus.STOPPED);
stopped.setCommitStatus(CommitStatus.NOT_COMMITTED);
stopped.setLastChangeCommitTime(new Date());
stopped.setPodId(TEST_POD_ID);
stopped.setParams(TEST_PARAMS);
stopped.setOwner(USER);
stopped.setConfigurationId(CONFIGURATION_ID_1);
stopped.setEntitiesIds(Stream.of(ENTITY_ID_1, ENTITY_ID_2).collect(Collectors.toList()));
pipelineRunDao.createPipelineRun(stopped);
LocalDate date2 = LocalDate.of(now.getYear(), now.getMonth(), 2);
PipelineRun failed = new PipelineRun();
failed.setPipelineId(testPipeline.getId());
failed.setVersion(TEST_REVISION_3);
failed.setStartDate(Date.from(date2.atStartOfDay(ZoneId.systemDefault()).toInstant()));
failed.setEndDate(failed.getStartDate());
failed.setStatus(TaskStatus.FAILURE);
failed.setCommitStatus(CommitStatus.NOT_COMMITTED);
failed.setLastChangeCommitTime(new Date());
failed.setPodId(TEST_POD_ID);
failed.setParams(TEST_PARAMS);
failed.setOwner(USER);
failed.setConfigurationId(CONFIGURATION_ID_2);
failed.setEntitiesIds(Stream.of(ENTITY_ID_2, ENTITY_ID_3).collect(Collectors.toList()));
pipelineRunDao.createPipelineRun(failed);
LocalDate date3 = LocalDate.of(now.getYear(), now.getMonth(), 3);
PipelineRun running = new PipelineRun();
running.setPipelineId(testPipeline2.getId());
running.setVersion(TEST_REVISION_2);
running.setStartDate(Date.from(date3.atStartOfDay(ZoneId.systemDefault()).toInstant()));
running.setEndDate(running.getStartDate());
running.setStatus(TaskStatus.RUNNING);
running.setCommitStatus(CommitStatus.NOT_COMMITTED);
running.setLastChangeCommitTime(new Date());
running.setPodId(TEST_POD_ID);
running.setParams(TEST_PARAMS);
running.setOwner(USER);
running.setConfigurationId(CONFIGURATION_ID_3);
running.setEntitiesIds(Stream.of(ENTITY_ID_1, ENTITY_ID_3).collect(Collectors.toList()));
pipelineRunDao.createPipelineRun(running);
PagingRunFilterVO filterVO = new PagingRunFilterVO();
filterVO.setPage(1);
filterVO.setPageSize(TEST_PAGE_SIZE);
List<PipelineRun> runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertFalse(runs.isEmpty());
assertEquals(3, runs.size());
filterVO.setPipelineIds(Collections.singletonList(testPipeline.getId()));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(2, runs.size());
assertTrue(runs.stream().allMatch(r -> r.getVersion().equals(TEST_REVISION_1) || r.getVersion().equals(TEST_REVISION_3)));
filterVO.setStatuses(Arrays.asList(TaskStatus.FAILURE, TaskStatus.STOPPED));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(2, runs.size());
filterVO.setStatuses(null);
filterVO.setVersions(Collections.singletonList(TEST_REVISION_3));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(1, runs.size());
assertTrue(runs.stream().allMatch(r -> r.getVersion().equals(TEST_REVISION_3)));
filterVO.setStatuses(Collections.singletonList(TaskStatus.RUNNING));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertTrue(runs.isEmpty());
filterVO.setVersions(null);
filterVO.setPipelineIds(null);
filterVO.setStatuses(Collections.singletonList(TaskStatus.FAILURE));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(1, runs.size());
assertTrue(runs.stream().allMatch(r -> r.getStatus() == TaskStatus.FAILURE));
filterVO.setStatuses(null);
filterVO.setStartDateFrom(Date.from(date2.atStartOfDay(ZoneId.systemDefault()).toInstant()));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(2, runs.size());
assertTrue(runs.stream().allMatch(r -> r.getStartDate().getTime() >= date2.atStartOfDay(ZoneId.systemDefault()).toInstant().getEpochSecond()));
filterVO.setEndDateTo(Date.from(LocalDateTime.of(now.getYear(), now.getMonth(), 2, HOURS_23, MINUTES_59).atZone(ZoneId.systemDefault()).toInstant()));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(1, runs.size());
// test filter by configuration ids
filterVO.setStartDateFrom(null);
filterVO.setEndDateTo(null);
filterVO.setConfigurationIds(Stream.of(CONFIGURATION_ID_1, CONFIGURATION_ID_2).collect(Collectors.toList()));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(2, runs.size());
// test filter by entities ids
filterVO.setConfigurationIds(null);
filterVO.setEntitiesIds(Stream.of(ENTITY_ID_1, ENTITY_ID_2).collect(Collectors.toList()));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(3, runs.size());
filterVO.setEntitiesIds(Stream.of(ENTITY_ID_1).collect(Collectors.toList()));
runs = pipelineRunDao.searchPipelineRuns(filterVO);
assertEquals(2, runs.size());
}
use of com.epam.pipeline.entity.pipeline.PipelineRun in project cloud-pipeline by epam.
the class PipelineRunDaoTest method runPipelineWithRunSids.
@Test
public void runPipelineWithRunSids() {
List<RunSid> runSids = new ArrayList<>();
RunSid runSid1 = new RunSid();
runSid1.setName(TEST_USER);
runSid1.setIsPrincipal(true);
runSids.add(runSid1);
RunSid runSid2 = new RunSid();
runSid2.setName(GROUP_NAME);
runSid2.setIsPrincipal(false);
runSids.add(runSid2);
Pipeline testPipeline = getPipeline();
PipelineRun run = createRunWithRunSids(testPipeline.getId(), null, runSids);
PipelineRun loadedRun = pipelineRunDao.loadPipelineRun(run.getId());
assertTrue(runSids.equals(loadedRun.getRunSids()));
}
Aggregations