static BuildInfoExporterAction addBuildInfoExporterAction(AbstractBuild<?, ?> parentBuild, String triggeredProject, int buildNumber, Result buildResult) { BuildInfoExporterAction action = parentBuild.getAction(BuildInfoExporterAction.class); if (action == null) { action = new BuildInfoExporterAction(triggeredProject, buildNumber, parentBuild, buildResult); parentBuild.getActions().add(action); } else { action.addBuildReference(triggeredProject, buildNumber, buildResult); } return action; }
public void addBuildReference(BuildReference buildRef) { addBuild(buildRef); }
/** * Get a list of projects as a string using the separator * * @param separator * @return list of projects separated by separator */ protected String getProjectListString(String separator) { Set<String> refs = getProjectsWithBuilds(); StringBuilder buf = new StringBuilder(); boolean first = true; for (String s : refs) { if (first) { first = false; } else { buf.append(separator); } buf.append(s.replaceAll("[^a-zA-Z0-9]+", "_")); } return buf.toString(); }
String sanatizedProjectList = getProjectListString(","); env.put(ALL_JOBS_NAME_VARIABLE, sanatizedProjectList); for (String project : getProjectsWithBuilds()) { List<BuildReference> refs = getBuildRefs(project); env.put(ALL_BUILD_NUMBER_VARIABLE_PREFIX + sanatizedBuildName, getBuildNumbersString(refs, ",")); env.put(BUILD_RUN_COUNT_PREFIX + sanatizedBuildName, Integer.toString(refs.size())); for (BuildReference br : refs) {
AbstractBuild b = future.get(); listener.getLogger().println(HyperlinkNote.encodeTo('/'+ b.getUrl(), b.getFullDisplayName()) + " completed. Result was "+b.getResult()); build.getActions().add(new BuildInfoExporterAction(b.getProject().getFullName(), b.getNumber()));
String triggeredProjects = build.getAction(BuildInfoExporterAction.class).getProjectListString(","); subProjectData.getTriggered().addAll(readableItemsFromNameList(build.getParent().getParent(), triggeredProjects, AbstractProject.class));
listener.getLogger().println("Triggering projects: " + getProjectListAsString(projectList)); for(Job p : projectList) { BuildInfoExporterAction.addBuildInfoExporterAction(build, p.getFullName()); Run b = future.get(); listener.getLogger().println(HyperlinkNote.encodeTo('/' + b.getUrl(), b.getFullDisplayName()) + " completed. Result was " + b.getResult()); BuildInfoExporterAction.addBuildInfoExporterAction(build, b.getParent().getFullName(), b.getNumber(), b.getResult());
static BuildInfoExporterAction addBuildInfoExporterAction(AbstractBuild<?, ?> parentBuild, String triggeredProject) { BuildInfoExporterAction action = parentBuild.getAction(BuildInfoExporterAction.class); if (action == null) { action = new BuildInfoExporterAction(new BuildReference(triggeredProject)); parentBuild.getActions().add(action); } else { action.addBuildReference(new BuildReference(triggeredProject)); } return action; }
public BuildInfoExporterAction(BuildReference buildRef) { super(); this.builds = new ArrayList<BuildReference>(); addBuild(buildRef); lastReference = buildRef; }
public void addBuildReference(String triggeredProject, int buildNumber, Result buildResult) { BuildReference buildRef = new BuildReference(triggeredProject, buildNumber, buildResult); addBuild(buildRef); }