public boolean containsPipelineInPath(String pipelineName) { for (PipelineConfig pipelineConfig : path) { if (CaseInsensitiveString.str(pipelineConfig.name()).equalsIgnoreCase(pipelineName)) { return true; } } return false; }
private void addPipelineIfNotPresent(PipelineConfig pipelineConfig, Map<String, ScheduleCheckState> pipelines) { if (!pipelines.containsKey(CaseInsensitiveString.str(pipelineConfig.name()))) { pipelines.put(CaseInsensitiveString.str(pipelineConfig.name()), ScheduleCheckState.IDLE); LOGGER.debug("[Configuration Changed] Marking new pipeline {} as IDLE", pipelineConfig.name()); } }
public Collection<String> allRoleNames(CruiseConfig cruiseConfig) { List<String> roles = new ArrayList<>(); for (Role role : allRoles(cruiseConfig)) { roles.add(CaseInsensitiveString.str(role.getName())); } return roles; }
@Override public List<String> getOperateRoleNames() { List<String> roles = new ArrayList<>(); for (AdminRole role : getOperateRoles()) { roles.add(CaseInsensitiveString.str(role.getName())); } return roles; }
public List<EnvironmentPipelineModel> getAllRemotePipelinesForUserInEnvironment(Username user, EnvironmentConfig environment) { List<EnvironmentPipelineModel> pipelines = new ArrayList<>(); for (EnvironmentPipelineConfig pipelineConfig : environment.getRemotePipelines()) { String pipelineName = CaseInsensitiveString.str(pipelineConfig.getName()); if (securityService.hasViewPermissionForPipeline(user, pipelineName)) { pipelines.add(new EnvironmentPipelineModel(pipelineName, CaseInsensitiveString.str(environment.name()))); } } Collections.sort(pipelines); return pipelines; }
@Override public EnvironmentVariableContext createEnvironmentContext() { EnvironmentVariableContext context = new EnvironmentVariableContext( GO_ENVIRONMENT_NAME, CaseInsensitiveString.str(name)); variables.addTo(context); return context; }
public void toJson(Map json, Revision revision) { json.put("folder", getFolder() == null ? "" : getFolder()); json.put("scmType", "Dependency"); json.put("location", pipelineName + "/" + stageName); json.put("action", "Completed"); if (!CaseInsensitiveString.isBlank(getName())) { json.put("materialName", CaseInsensitiveString.str(getName())); } }
public static BuildCause createManualForced(MaterialRevisions materialRevisions, Username username) { if (username == null) { throw new IllegalArgumentException("Username cannot be null"); } String message = String.format("Forced by %s", username.getDisplayName()); return new BuildCause(materialRevisions, BuildTrigger.forForced(message), CaseInsensitiveString.str(username.getUsername())); }
private void addConfiguredPipelinesThatAreNotRunYet(Username username, PipelineDependencyGraphOld graph, List<PipelineConfig> dependents) { for (PipelineConfig dependent : dependents) { if (!graph.hasDependent(CaseInsensitiveString.str(dependent.name()))) { graph.addDependent(addEmptyPipelineInstance(CaseInsensitiveString.str(dependent.name()), username, dependent, false)); } } }
public void toJson(Map json, Revision revision) { json.put("folder", getFolder() == null ? "" : getFolder()); json.put("scmType", getTypeForDisplay()); json.put("location", getLocation()); if (!CaseInsensitiveString.isBlank(getName())) { json.put("materialName", CaseInsensitiveString.str(getName())); } json.put("action", "Modified"); }
public Revision getCurrentRevision(String requestedMaterialName) { for (MaterialRevision materialRevision : getCurrentRevisions()) { String materialName = CaseInsensitiveString.str(materialRevision.getMaterial().getName()); if(materialName != null && materialName.equals(requestedMaterialName)) { return materialRevision.getRevision(); } } throw new RuntimeException("material not known for pipeline " + getName()); }
private SchedulingChecker manualTriggerCheckers(PipelineConfig pipelineConfig, String username) { String pipelineName = CaseInsensitiveString.str(pipelineConfig.name()); String stageName = CaseInsensitiveString.str(pipelineConfig.getFirstStageConfig().name()); StageAuthorizationChecker stageAuthorizationChecker = new StageAuthorizationChecker(pipelineName, stageName, username, securityService); return new CompositeChecker(manualTriggerCheckersWithoutPermissionsCheck(pipelineConfig), stageAuthorizationChecker); }
private void showPipelineError(PipelineConfig pipelineConfig, Exception e, String msg, String description) { LOG.error(msg, e); serverHealthService.update( ServerHealthState.error(msg, description, HealthStateType.general(HealthStateScope.forPipeline(CaseInsensitiveString.str(pipelineConfig.name()))))); }
@Override public EnvironmentVariableContext createEnvironmentContext() { EnvironmentVariableContext context = new EnvironmentVariableContext( EnvironmentVariableContext.GO_ENVIRONMENT_NAME, CaseInsensitiveString.str(this.name())); this.getVariables().addTo(context); return context; }
@Override public final void validate(ValidationContext validationContext) { if (name != null && !StringUtils.isBlank(CaseInsensitiveString.str(name)) && !new NameTypeValidator().isNameValid(name)) { errors().add(MATERIAL_NAME, NameTypeValidator.errorMessage("material", name)); } validateConcreteMaterial(validationContext); }
public boolean canAutoTriggerConsumer(PipelineConfig pipelineConfig) { OperationResult result = new ServerHealthStateOperationResult(); String pipelineName = CaseInsensitiveString.str(pipelineConfig.name()); String stageName = CaseInsensitiveString.str(pipelineConfig.getFirstStageConfig().name()); SchedulingChecker checker = buildScheduleCheckers(asList(new PipelinePauseChecker(pipelineName, pipelinePauseService), new PipelineLockChecker(pipelineName, pipelineLockService), new StageActiveChecker(pipelineName, stageName, stageService))); checker.check(result); return result.getServerHealthState().isSuccess(); }
public JobInstances createJobInstance(CaseInsensitiveString stageName, JobConfig jobConfig, SchedulingContext context, Clock clock, JobType.JobNameGenerator jobNameGenerator) { JobInstances instances = new JobInstances(); createJobType(jobConfig.isRunOnAllAgents(), jobConfig.isRunMultipleInstanceType()).createJobInstances(instances, context, jobConfig, CaseInsensitiveString.str(stageName), jobNameGenerator, clock, this); return instances; }
private void populateStageOperatePermission(PipelineInstanceModel pipelineInstanceModel, Username username) { for (StageInstanceModel stage : pipelineInstanceModel.getStageHistory()) { stage.setOperatePermission(securityService.hasOperatePermissionForStage(pipelineInstanceModel.getName(), stage.getName(), CaseInsensitiveString.str(username.getUsername()))); } }
public Pipeline createPipelineInstance(PipelineConfig pipelineConfig, BuildCause buildCause, SchedulingContext context, String md5, Clock clock) { buildCause.assertMaterialsMatch(pipelineConfig.materialConfigs()); buildCause.assertPipelineConfigAndMaterialRevisionMatch(pipelineConfig); EnvironmentVariables variables = EnvironmentVariables.toEnvironmentVariables(pipelineConfig.getVariables()); variables.overrideWith(buildCause.getVariables()); return new Pipeline(CaseInsensitiveString.str(pipelineConfig.name()), pipelineConfig.getLabelTemplate(), buildCause, variables, createStageInstance(pipelineConfig.first(), context, md5, clock)); }