예제 #1
0
 public Pipeline schedulePipelineWithAllStages(
     PipelineConfig pipelineConfig, BuildCause buildCause) {
   buildCause.assertMaterialsMatch(pipelineConfig.materialConfigs());
   DefaultSchedulingContext defaultSchedulingContext =
       new DefaultSchedulingContext(GoConstants.DEFAULT_APPROVED_BY);
   Stages stages = new Stages();
   Pipeline pipeline =
       instanceFactory.createPipelineInstance(
           pipelineConfig, buildCause, defaultSchedulingContext, md5, new TimeProvider());
   for (StageConfig stageConfig : pipelineConfig) {
     stages.add(
         instanceFactory.createStageInstance(
             stageConfig, defaultSchedulingContext, md5, new TimeProvider()));
   }
   pipeline.setStages(stages);
   return scheduleJobInstancesAndSavePipeline(pipeline);
 }
예제 #2
0
 public Pipeline newPipelineWithAllStagesPassed(PipelineConfig config) throws SQLException {
   Pipeline pipeline = newPipelineWithFirstStagePassed(config);
   for (StageConfig stageConfig : config) {
     if (config.first().equals(stageConfig)) {
       continue;
     }
     Stage instance =
         instanceFactory.createStageInstance(
             stageConfig,
             new DefaultSchedulingContext(GoConstants.DEFAULT_APPROVED_BY),
             md5,
             new TimeProvider());
     stageDao.saveWithJobs(pipeline, instance);
     passStage(instance);
   }
   return pipelineDao.loadPipeline(pipeline.getId());
 }
예제 #3
0
 public Stage scheduleStage(Pipeline pipeline, StageConfig stageConfig, int order) {
   Stage instance =
       instanceFactory.createStageInstance(
           stageConfig, new DefaultSchedulingContext("cruise"), md5, new TimeProvider());
   return saveStage(pipeline, instance, order);
 }