@Test public void shouldPopulateEnvironmentVariablesFromAttributeMap() { JobConfig jobConfig = new JobConfig(); HashMap map = new HashMap(); HashMap valueHashMap = new HashMap(); valueHashMap.put("name", "FOO"); valueHashMap.put("value", "BAR"); map.put(JobConfig.ENVIRONMENT_VARIABLES, valueHashMap); EnvironmentVariablesConfig mockEnvironmentVariablesConfig = mock(EnvironmentVariablesConfig.class); jobConfig.setVariables(mockEnvironmentVariablesConfig); jobConfig.setConfigAttributes(map); verify(mockEnvironmentVariablesConfig).setConfigAttributes(valueHashMap); }
jobConfig.setTabs(tabs); jobConfig.setProperties(properties); jobConfig.setVariables(variables);
jobConfig.setTabs(tabs); jobConfig.setProperties(properties); jobConfig.setVariables(variables);
@Test public void shouldAddEnvironmentVariablesToJobPlan() { EnvironmentVariablesConfig variablesConfig = new EnvironmentVariablesConfig(); variablesConfig.add("blahVar", "blahVal"); JobConfig jobConfig = new JobConfig("foo"); jobConfig.setVariables(variablesConfig); SchedulingContext context = new DefaultSchedulingContext(); JobPlan plan = instanceFactory.createJobPlan(jobConfig, context); assertThat(plan.getVariables(), hasItem(new EnvironmentVariable("blahVar", "blahVal"))); }
private static void addTask(JobConfig jobConfig) { jobConfig.setVariables(EnvironmentVariablesConfigMother.environmentVariables()); AntTask task = new AntTask(); task.setBuildFile("build-file"); task.setTarget("target"); task.setWorkingDirectory("working-directory"); jobConfig.addTask(task); }
public static JobConfig fromJSON(JsonReader jsonReader) { JobRepresenter.jsonReader = jsonReader; JobConfig jobConfig = new JobConfig(); jsonReader.readCaseInsensitiveStringIfPresent("name", jobConfig::setName); setRunInstanceCount(jobConfig); setTimeout(jobConfig); jsonReader.readStringIfPresent("elastic_profile_id", jobConfig::setElasticProfileId); setArtifacts(jobConfig); jobConfig.setVariables(EnvironmentVariableRepresenter.fromJSONArray(jsonReader)); setResources(jobConfig); jobConfig.setTabs(TabConfigRepresenter.fromJSONArray(jsonReader)); jobConfig.setProperties(PropertyConfigRepresenter.fromJSONArray(jsonReader)); jobConfig.setTasks(TaskRepresenter.fromJSONArray(jsonReader)); return jobConfig; }
public static JobConfig fromJSON(JsonReader jsonReader) { JobRepresenter.jsonReader = jsonReader; JobConfig jobConfig = new JobConfig(); jsonReader.readCaseInsensitiveStringIfPresent("name", jobConfig::setName); setRunInstanceCount(jobConfig); setTimeout(jobConfig); jsonReader.readStringIfPresent("elastic_profile_id", jobConfig::setElasticProfileId); setArtifacts(jobConfig); jobConfig.setVariables(EnvironmentVariableRepresenter.fromJSONArray(jsonReader)); setResources(jobConfig); jobConfig.setTabs(TabConfigRepresenter.fromJSONArray(jsonReader)); jobConfig.setProperties(PropertyConfigRepresenter.fromJSONArray(jsonReader)); jobConfig.setTasks(TaskRepresenter.fromJSONArray(jsonReader)); return jobConfig; }
@Test public void shouldOverrideEnvironmentVariablesPresentInTheScheduleContextToJobPlan() { EnvironmentVariablesConfig variablesConfig = new EnvironmentVariablesConfig(); variablesConfig.add("blahVar", "blahVal"); variablesConfig.add("differentVar", "differentVal"); JobConfig jobConfig = new JobConfig("foo"); jobConfig.setVariables(variablesConfig); EnvironmentVariablesConfig overridenConfig = new EnvironmentVariablesConfig(); overridenConfig.add("blahVar", "originalVal"); overridenConfig.add("secondVar", "secondVal"); SchedulingContext context = new DefaultSchedulingContext(); context = context.overrideEnvironmentVariables(overridenConfig); JobPlan plan = instanceFactory.createJobPlan(jobConfig, context); assertThat(plan.getVariables().size(), is(3)); assertThat(plan.getVariables(), hasItem(new EnvironmentVariable("blahVar", "blahVal"))); assertThat(plan.getVariables(), hasItem(new EnvironmentVariable("secondVar", "secondVal"))); assertThat(plan.getVariables(), hasItem(new EnvironmentVariable("differentVar", "differentVal"))); }
@Test public void shouldCloneStagesSoThatMutationDoesnotAffectTemplate() throws Exception { PipelineConfig pipelineConfig = new PipelineConfig(new CaseInsensitiveString("pipelineName"), new MaterialConfigs(MaterialConfigsMother.hgMaterialConfig("http://google.com"))); pipelineConfig.setTemplateName(new CaseInsensitiveString("templateName")); PipelineTemplateConfig template = new PipelineTemplateConfig(); JobConfig jobConfigFromTemplate = new JobConfig("job-1"); StageConfig stageConfigFromTemplate = new StageConfig(new CaseInsensitiveString("stage-1"), new JobConfigs(jobConfigFromTemplate)); template.add(stageConfigFromTemplate); pipelineConfig.usingTemplate(template); StageConfig stageConfigFromPipeline = pipelineConfig.get(0); EnvironmentVariablesConfig variablesConfig = new EnvironmentVariablesConfig(); variablesConfig.add("FOO", "BAR"); stageConfigFromPipeline.setVariables(variablesConfig); JobConfig jobConfigFromPipeline = stageConfigFromPipeline.jobConfigByConfigName(new CaseInsensitiveString("job-1")); EnvironmentVariablesConfig jobVariablesConfigFromPipeline = new EnvironmentVariablesConfig(); jobVariablesConfigFromPipeline.add("BAZ", "QUUX"); jobConfigFromPipeline.setVariables(jobVariablesConfigFromPipeline); assertThat(stageConfigFromPipeline.getVariables().isEmpty(), is(false)); assertThat(jobConfigFromPipeline.getVariables().isEmpty(), is(false)); assertThat(stageConfigFromTemplate.getVariables().isEmpty(), is(true)); assertThat(jobConfigFromTemplate.getVariables().isEmpty(), is(true)); }