@Override public EnvironmentVariablesConfig variablesFor(String pipelineName) { EnvironmentVariablesConfig pipelineVariables = pipelineConfigByName(new CaseInsensitiveString(pipelineName)).getVariables(); EnvironmentConfig environment = this.environments.findEnvironmentForPipeline(new CaseInsensitiveString(pipelineName)); return environment != null ? environment.getVariables().overrideWith(pipelineVariables) : pipelineVariables; }
@Override public boolean hasVariableInScope(String pipelineName, String variableName) { EnvironmentConfig environmentConfig = environments.findEnvironmentForPipeline(new CaseInsensitiveString(pipelineName)); if (environmentConfig != null) { if (environmentConfig.hasVariable(variableName)) { return true; } } return pipelineConfigByName(new CaseInsensitiveString(pipelineName)).hasVariableInScope(variableName); }
private GoConfigHolder internalLoad(final String content, final ConfigModifyingUser configModifyingUser, final List<PartialConfig> partials) throws Exception { GoConfigHolder configHolder = magicalGoConfigXmlLoader.loadConfigHolder(content, cruiseConfig -> cruiseConfig.setPartials(partials)); CruiseConfig config = configHolder.config; checkinConfigToGitRepo(partials, config, content, configHolder.configForEdit.getMd5(), configModifyingUser.getUserName()); return configHolder; }
private StageConfig getStageConfig(String stageName, String jobName) { JobConfig jobConfig = new JobConfig(new CaseInsensitiveString(jobName)); jobConfig.addTask(new AntTask()); jobConfig.addTask(new ExecTask("command", "", "workingDir")); jobConfig.artifactConfigs().add(new BuildArtifactConfig("src", "dest")); jobConfig.addVariable("env1", "val1"); jobConfig.addResourceConfig("powerful"); JobConfigs jobConfigs = new JobConfigs(jobConfig); return new StageConfig(new CaseInsensitiveString(stageName), jobConfigs); }
public static JobConfigs jobConfigs(String... buildNames) { JobConfigs jobConfigs = new JobConfigs(); for (String buildName : buildNames) { jobConfigs.add(new JobConfig(new CaseInsensitiveString(buildName), new ResourceConfigs(), new ArtifactConfigs())); } return jobConfigs; }
public static StageConfig stageWithTasks(String stageName) { JobConfig job = new JobConfig("job"); job.addTask(new ExecTask("ls", "-la", "pwd")); job.addTask(new AntTask()); return new StageConfig(new CaseInsensitiveString(stageName), new JobConfigs(job)); }
private StageConfig stageWithAuth(String role) { StageConfig stage = stageWithJobResource("foo"); stage.getApproval().getAuthConfig().add(new AdminRole(new CaseInsensitiveString(role))); return stage; }
public static void addApprovalWithUsers(StageConfig stage, String... users) { Approval approval = stage.getApproval(); for (String user : users) { approval.getAuthConfig().add(new AdminUser(new CaseInsensitiveString(user))); } stage.updateApproval(approval); }
public static PipelineConfigs groupWithOperatePermission(PipelineConfig pipelineConfig, String... users) { Authorization authorization = new Authorization(); for (String user : users) { authorization.getOperationConfig().add(new AdminUser(new CaseInsensitiveString(user))); } return new BasicPipelineConfigs("defaultGroup", authorization, pipelineConfig); }
private PipelineConfigs addRoleAsAdminToDefaultGroup(CruiseConfig cruiseConfig, String role) { PipelineConfigs group = cruiseConfig.findGroup(DEFAULT_GROUP); group.getAuthorization().getAdminsConfig().add(new AdminRole(new CaseInsensitiveString(role))); return group; }
private PipelineConfigs addUserAsOperatorToDefaultGroup(CruiseConfig cruiseConfig, String user) { PipelineConfigs group = cruiseConfig.findGroup(DEFAULT_GROUP); group.getAuthorization().getOperationConfig().add(new AdminUser(new CaseInsensitiveString(user))); return group; }
private void addPipelineWithStages(String pipelineName, String stageName, JobConfig... jobConfigs) { PipelineConfig pipeline = new PipelineConfig(new CaseInsensitiveString(pipelineName), null); pipeline.add(new StageConfig(new CaseInsensitiveString(stageName), new JobConfigs(jobConfigs))); pipeline.add(new StageConfig(new CaseInsensitiveString(stageName + "2"), new JobConfigs(jobConfigs))); pipelines.add(pipeline); }
public CruiseConfig addApprovalForStage(CruiseConfig cruiseConfig, String pipelineName, String stageName, String roleName) { Approval stageApproval = cruiseConfig.stageConfigByName(new CaseInsensitiveString(pipelineName), new CaseInsensitiveString(stageName)).getApproval(); stageApproval.addAdmin(new AdminRole(new CaseInsensitiveString(roleName))); return cruiseConfig; }
public static SecurityConfig securityConfigWithRole(SecurityConfig securityConfig, String roleName, String... users) { RoleConfig role = new RoleConfig(new CaseInsensitiveString(roleName)); for (String user : users) { role.addUser(new RoleUser(new CaseInsensitiveString(user))); } securityConfig.addRole(role); return securityConfig; } }
@Override public boolean isValid(CruiseConfig preprocessedConfig) { preprocessedAdmin = preprocessedConfig.server().security().adminsConfig(); if (!preprocessedAdmin.validateTree(ConfigSaveValidationContext.forChain(preprocessedConfig))) { BasicCruiseConfig.copyErrors(preprocessedAdmin, admin); return false; } return true; }
private void validatePartsOfPipelineConfig(PipelineConfig pipelineConfig, PipelineConfigSaveValidationContext contextForStages) { for (StageConfig stageConfig : pipelineConfig.getStages()) { PipelineConfigSaveValidationContext contextForChildren = contextForStages.withParent(stageConfig); validateStageApprovalAuthorization(stageConfig, contextForChildren); for (JobConfig jobConfig : stageConfig.getJobs()) { PipelineConfigSaveValidationContext contextForJobChildren = contextForChildren.withParent(jobConfig); validateFetchTasks(jobConfig, contextForJobChildren); validateElasticProfileId(jobConfig, contextForJobChildren); validatePluggableArtifactConfig(jobConfig, contextForJobChildren); } } }
public CruiseConfig update(CruiseConfig cruiseConfig) { AgentConfig agentConfig = cruiseConfig.agents().getAgentByUuid(uuid); agentConfig.getResourceConfigs().importFromCsv(resources); return cruiseConfig; } }
private JobTypeConfig jobTypeConfig() { if (runOnAllAgents) { return new RunOnAllAgentsJobTypeConfig(); } else if (isRunMultipleInstanceType()) { return new RunMultipleInstanceJobTypeConfig(); } else { return new SingleJobTypeConfig(); } }
public static JobConfigs withBuildPlans(String... jobConfigNames) { JobConfigs jobConfigs = new JobConfigs(); for (String planName : jobConfigNames) { jobConfigs.add(new JobConfig(new CaseInsensitiveString(planName), new ResourceConfigs(), new ArtifactConfigs())); } return jobConfigs; }