@Override public String toString() { return run.getDisplayName(); } }
/** * Handles a fatal build problem (exception) that occurred during the build. */ private void handleFatalBuildProblem(@Nonnull BuildListener listener, @Nonnull Throwable e) { if(listener!=null) { LOGGER.log(FINE, getDisplayName()+" failed to build",e); if(e instanceof IOException) Util.displayIOException((IOException)e,listener); Functions.printStackTrace(e, listener.fatalError(e.getMessage())); } else { LOGGER.log(SEVERE, getDisplayName()+" failed to build and we don't even have a listener",e); } }
@Exported public String getFullDisplayName() { return project.getFullDisplayName()+' '+getDisplayName(); }
public static String encodeTo(Run r) { return encodeTo('/'+r.getUrl(),r.getDisplayName()); }
/** * Returns true if this user has made a commit to this build. */ @SuppressWarnings("unchecked") default boolean hasParticipant(User user) { for (ChangeLogSet<? extends ChangeLogSet.Entry> c : getChangeSets()) { for (ChangeLogSet.Entry e : c) { try { if (e.getAuthor() == user) { return true; } } catch (RuntimeException re) { Logger LOGGER = Logger.getLogger(RunWithSCM.class.getName()); LOGGER.log(Level.INFO, "Failed to determine author of changelog " + e.getCommitId() + "for " + ((RunT) this).getParent().getDisplayName() + ", " + ((RunT) this).getDisplayName(), re); } } } return false; } }
/** * Serves the artifacts. * @throws AccessDeniedException Access denied */ public @Nonnull DirectoryBrowserSupport doArtifact() { if(Functions.isArtifactsPermissionEnabled()) { checkPermission(ARTIFACTS); } return new DirectoryBrowserSupport(this, getArtifactManager().root(), Messages.Run_ArtifactsBrowserTitle(project.getDisplayName(), getDisplayName()), "package.png", true); }
@Override public void buildEnvironmentFor(Run r, EnvVars env, TaskListener listener) throws IOException, InterruptedException { Computer c = Computer.currentComputer(); if (c!=null){ EnvVars compEnv = c.getEnvironment().overrideAll(env); env.putAll(compEnv); } env.put("BUILD_DISPLAY_NAME",r.getDisplayName()); Jenkins j = Jenkins.getInstance(); String rootUrl = j.getRootUrl(); if(rootUrl!=null) { env.put("BUILD_URL", rootUrl+r.getUrl()); } }
private boolean fitsSearchParams(@Nonnull Run run) { if (searchString == null) { return true; } if (fitsSearchString(run.getDisplayName())) { return true; } else if (fitsSearchString(run.getDescription())) { return true; } else if (fitsSearchString(run.getNumber())) { return true; } else if (fitsSearchString(run.getQueueId())) { return true; } else if (fitsSearchString(run.getResult())) { return true; } else if (run instanceof AbstractBuild && fitsSearchBuildVariables((AbstractBuild) run)) { return true; } else { ParametersAction parametersAction = run.getAction(ParametersAction.class); if (parametersAction != null && fitsSearchBuildParameters(parametersAction)) { return true; } } // Non of the fuzzy matches "liked" the search term. return false; }
/** * Exposes the name/value as an environment variable. */ @Override public void buildEnvironment(Run<?,?> build, EnvVars env) { Run run = getRun(); String value = (null == run) ? "UNKNOWN" : Jenkins.getInstance().getRootUrl() + run.getUrl(); env.put(name, value); env.put(name + ".jobName", getJobName()); // undocumented, left for backward compatibility env.put(name + "_JOBNAME", getJobName()); // prefer this version env.put(name + ".number" , getNumber ()); // same as above env.put(name + "_NUMBER" , getNumber ()); // if run is null, default to the standard '#1' display name format env.put(name + "_NAME", (null == run) ? "#" + getNumber() : run.getDisplayName()); // since 1.504 String buildResult = (null == run || null == run.getResult()) ? "UNKNOWN" : run.getResult().toString(); env.put(name + "_RESULT", buildResult); // since 1.517 env.put(name.toUpperCase(Locale.ENGLISH),value); // backward compatibility pre 1.345 }
@Override protected void calculate(Run<?,?> build, JSONObject element) { BallColor iconColor = build.getIconColor(); element.put("iconColorOrdinal", iconColor.ordinal()); element.put("iconColorDescription", iconColor.getDescription()); element.put("url", build.getUrl()); element.put("buildStatusUrl", build.getBuildStatusUrl()); element.put("parentUrl", build.getParent().getUrl()); element.put("parentFullDisplayName", Functions.breakableString(Functions.escape(build.getParent().getFullDisplayName()))); element.put("displayName", build.getDisplayName()); element.put("timestampString", build.getTimestampString()); element.put("timestampString2", build.getTimestampString2()); element.put("timestampString3", Util.XS_DATETIME_FORMATTER.format(new Date(build.getStartTimeInMillis()))); Run.Summary buildStatusSummary = build.getBuildStatusSummary(); element.put("buildStatusSummaryWorse", buildStatusSummary.isWorse); element.put("buildStatusSummaryMessage", buildStatusSummary.message); }
@Override protected void calculate(Run<?,?> build, JSONObject element) { BallColor iconColor = build.getIconColor(); element.put("iconColorOrdinal", iconColor.ordinal()); element.put("iconColorDescription", iconColor.getDescription()); element.put("buildStatusUrl", build.getBuildStatusUrl()); element.put("number", build.getNumber()); element.put("displayName", build.getDisplayName()); element.put("duration", build.getDuration()); element.put("durationString", build.getDurationString()); if (build instanceof AbstractBuild) { AbstractBuild<?,?> b = (AbstractBuild) build; Node n = b.getBuiltOn(); if (n == null) { String ns = b.getBuiltOnStr(); if (ns != null && !ns.isEmpty()) { element.put("builtOnStr", ns); } } else if (n != Jenkins.getInstance()) { element.put("builtOn", n.getNodeName()); element.put("builtOnStr", n.getDisplayName()); } else { element.put("builtOnStr", hudson.model.Messages.Hudson_Computer_DisplayName()); } } }
return new Summary(false, Messages.Run_Summary_BrokenForALongTime()); RunT failedBuild = since.getNextBuild(); return new Summary(false, Messages.Run_Summary_BrokenSince(failedBuild.getDisplayName()));
@Override public String toString() { return run.getDisplayName(); } }
@Override public String toString() { String l = build.getDisplayName(); if (build instanceof AbstractBuild) { String s = ((AbstractBuild)build).getBuiltOnStr(); if(s != null) l += ' ' + s; } return l; }
@Exported public String getFullDisplayName() { return project.getFullDisplayName()+' '+getDisplayName(); }
@Override public void onFinalized(Run r) { LOG.finer("JenkowRunListener.onFinalized: "+r.getParent().getDisplayName()+" "+r.getDisplayName()); new JenkowExecContext(r).onFinalized(r); } }
/** * Serves the artifacts. * @throws AccessDeniedException Access denied */ public @Nonnull DirectoryBrowserSupport doArtifact() { if(Functions.isArtifactsPermissionEnabled()) { checkPermission(ARTIFACTS); } return new DirectoryBrowserSupport(this, getArtifactManager().root(), Messages.Run_ArtifactsBrowserTitle(project.getDisplayName(), getDisplayName()), "package.png", true); }
/** * Serves the artifacts. */ public DirectoryBrowserSupport doArtifact() { if (Functions.isArtifactsPermissionEnabled()) { checkPermission(ARTIFACTS); } return new DirectoryBrowserSupport(this, new FilePath(getArtifactsDir()), project.getDisplayName() + ' ' + getDisplayName(), "package.png", true); }
/** * Serves the artifacts. */ public DirectoryBrowserSupport doArtifact() { if(Functions.isArtifactsPermissionEnabled()) { checkPermission(ARTIFACTS); } return new DirectoryBrowserSupport(this,new FilePath(getArtifactsDir()), project.getDisplayName()+' '+getDisplayName(), "package.gif", true); }
/** * Serves the artifacts. */ public DirectoryBrowserSupport doArtifact() { if(Functions.isArtifactsPermissionEnabled()) { checkPermission(ARTIFACTS); } return new DirectoryBrowserSupport(this,new FilePath(getArtifactsDir()), project.getDisplayName()+' '+getDisplayName(), "package.png", true); }