@Override public String getDisplayName() { return Messages.JDKAxis_DisplayName(); }
@Override public String getDisplayName() { return Messages.LabelAxis_DisplayName(); }
@Override public String getPronoun() { return Messages.MatrixConfiguration_Pronoun(); }
if (a!=null && a.getMatrixBuild()==getBuild()) { q.cancel(i); logger.println(Messages.MatrixBuild_Cancelled(ModelHyperlinkNote.encodeTo(c))); Executor exe = b.getExecutor(); if(exe!=null) { logger.println(Messages.MatrixBuild_Interrupting(ModelHyperlinkNote.encodeTo(b))); exe.interrupt();
protected void scheduleSubBuilds(final Iterable<Combination> subBuildCombinations, final SubBuildFinishListener subBuildFinishListener, final TaskListener listener) { for (final Combination subBuildCombination : subBuildCombinations) { final DynamicSubProject c = this.dynamicBuild.getSubProject(subBuildCombination); listener.getLogger().println(Messages.MatrixBuild_Triggering(ModelHyperlinkNote.encodeTo(c))); final List<Action> childActions = new ArrayList<>(); childActions.addAll(Util.filter(this.dynamicBuild.getActions(), ParametersAction.class)); childActions.add(new SubBuildExecutionAction(this.subBuildRunner, subBuildFinishListener)); childActions.add(new ParentBuildAction(this.dynamicBuild)); c.scheduleBuild(childActions, this.dynamicBuild.getCause()); } }
public CurrentBuildState waitForCompletion(final DynamicSubProject c, final TaskListener listener) throws InterruptedException { // wait for the completion int appearsCancelledCount = 0; while (true) { Thread.sleep(1000); final CurrentBuildState b = c.getCurrentStateByNumber(this.dynamicBuild.getNumber()); if (b != null) { // its building or is done if (b.isBuilding()) { continue; } else { final Result buildResult = b.getResult(); if (buildResult != null) { return b; } } } else { // not building or done, check queue final Queue.Item qi = c.getQueueItem(); if (qi == null) { appearsCancelledCount++; listener.getLogger().println(c.getName() + " appears cancelled: " + appearsCancelledCount); } else { appearsCancelledCount = 0; } if (appearsCancelledCount >= 5) { listener.getLogger().println(Messages.MatrixBuild_AppearsCancelled(ModelHyperlinkNote.encodeTo(c))); return new CurrentBuildState("COMPLETED", Result.ABORTED); } } } }
/** * If the parent {@link MatrixBuild} is kept, keep this record too. */ @Override public String getWhyKeepLog() { MatrixBuild pb = getParentBuild(); if(pb!=null && pb.getWhyKeepLog()!=null) return Messages.MatrixRun_KeptBecauseOfParent(pb); return super.getWhyKeepLog(); }
public String getDisplayName() { return Messages.MatrixProject_DisplayName(); }
/** * Verifies that Axis names are valid and unique. */ private void checkAxes(Iterable<Axis> newAxes) throws FormException { HashSet<String> axisNames = new HashSet<String>(); for (Axis a : newAxes) { final AxisDescriptor desc = a.getDescriptor(); FormValidation fv = desc.doCheckName(a.getName()); if (fv.kind!=Kind.OK) { final String msg = Messages.MatrixProject_InvalidAxisName(a.getName(), fv.getMessage()); throw new FormException(msg,fv,"axis.name"); } for (String value: a.getValues()) { fv = desc.checkValue(value); if (fv.kind!=Kind.OK) { final String msg = Messages.MatrixProject_InvalidAxisValue(value, fv.getMessage()); // This is done on wrong place, MatrixProject is not supposed // to know field names of arbitrary axis implementations throw new FormException(msg,fv,"axis.value"); } } if (axisNames.contains(a.getName())) throw new FormException(Messages.MatrixProject_DuplicateAxisName(),"axis.name"); axisNames.add(a.getName()); } }
/** * Verifies that Axis names are valid and unique. */ private void checkAxisNames(Iterable<Axis> newAxes) throws FormException { HashSet<String> axisNames = new HashSet<String>(); for (Axis a : newAxes) { FormValidation fv = a.getDescriptor().doCheckName(a.getName()); if (fv.kind!=Kind.OK) throw new FormException(Messages.MatrixProject_DuplicateAxisName(),fv,"axis.name"); if (axisNames.contains(a.getName())) throw new FormException(Messages.MatrixProject_DuplicateAxisName(),"axis.name"); axisNames.add(a.getName()); } }
public void cancelSubBuilds(final PrintStream logger) { final Queue q = getJenkins().getQueue(); synchronized (q) { final int n = this.dynamicBuild.getNumber(); for (final Item i : q.getItems()) { final ParentBuildAction parentBuildAction = i.getAction(ParentBuildAction.class); if (parentBuildAction != null && this.dynamicBuild.equals(parentBuildAction.getParent())) { q.cancel(i); } } for (final DynamicSubProject c : this.dynamicBuild.getAllSubProjects()) { final DynamicSubBuild b = c.getBuildByNumber(n); if (b != null && b.isBuilding()) { final Executor exe = b.getExecutor(); if (exe != null) { logger.println(Messages.MatrixBuild_Interrupting(ModelHyperlinkNote.encodeTo(b))); exe.interrupt(); } } } } }
for (MatrixConfiguration c : activeConfigurations) { if (q.cancel(c)) { logger.println(Messages.MatrixBuild_Cancelled(c.getDisplayName())); Executor exe = b.getExecutor(); if (exe != null) { logger.println(Messages.MatrixBuild_Interrupting(b.getDisplayName())); exe.interrupt();
private void scheduleConfigurationBuild(PrintStream logger, MatrixConfiguration c) { logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName())); c.scheduleBuild(getAction(ParametersAction.class), new UpstreamCause(MatrixBuild.this)); }
listener.getLogger().println(Messages.MatrixBuild_AppearsCancelled(c.getDisplayName())); buildResult = Result.ABORTED;
/** * If the parent {@link MatrixBuild} is kept, keep this record too. */ @Override public String getWhyKeepLog() { MatrixBuild pb = getParentBuild(); if(pb!=null && pb.getWhyKeepLog()!=null) return Messages.MatrixRun_KeptBecauseOfParent(pb); return super.getWhyKeepLog(); }
public String getDisplayName() { return Messages.MatrixProject_DisplayName(); }
/** * Verifies that Axis names are valid and unique. */ private void checkAxisNames(Iterable<Axis> newAxes) throws FormException { HashSet<String> axisNames = new HashSet<String>(); for (Axis a : newAxes) { FormValidation fv = a.getDescriptor().doCheckName(a.getName()); if (fv.kind!=Kind.OK) throw new FormException(Messages.MatrixProject_DuplicateAxisName(),fv,"axis.name"); if (axisNames.contains(a.getName())) throw new FormException(Messages.MatrixProject_DuplicateAxisName(),"axis.name"); axisNames.add(a.getName()); } }
for (MatrixConfiguration c : activeConfigurations) { if (q.cancel(c)) { logger.println(Messages.MatrixBuild_Cancelled(c.getDisplayName())); Executor exe = b.getExecutor(); if (exe != null) { logger.println(Messages.MatrixBuild_Interrupting(b.getDisplayName())); exe.interrupt();
private void scheduleConfigurationBuild(PrintStream logger, MatrixConfiguration c) { logger.println(Messages.MatrixBuild_Triggering(c.getDisplayName())); c.scheduleBuild(getAction(ParametersAction.class), new UpstreamCause(MatrixBuild.this)); }
listener.getLogger().println(Messages.MatrixBuild_AppearsCancelled(c.getDisplayName())); buildResult = Result.ABORTED;