com.chikli.hudson.plugin.naginator
Class NaginatorScheduleAction

java.lang.Object
  extended by hudson.model.InvisibleAction
      extended by com.chikli.hudson.plugin.naginator.NaginatorScheduleAction
All Implemented Interfaces:
hudson.model.Action, hudson.model.ModelObject
Direct Known Subclasses:
NaginatorPublisherScheduleAction

public class NaginatorScheduleAction
extends hudson.model.InvisibleAction

Action to mark a build to be rescheduled by NaginatorListener. Be aware that you have to add this action to the parent build if the build is the child of another build (e.g. multi-configuration projects).


Constructor Summary
NaginatorScheduleAction()
          Should always reschedule the build.
NaginatorScheduleAction(int maxSchedule)
          Should reschedule the build for specified times.
NaginatorScheduleAction(int maxSchedule, ScheduleDelay delay, boolean rerunMatrixPart)
          Should reschedule the build for specified times.
 
Method Summary
 ScheduleDelay getDelay()
           
 int getMaxSchedule()
          The max times to reschedule the build.
 NoChildStrategy getNoChildStrategy()
           
 boolean isRerunMatrixPart()
           
 boolean shouldSchedule(hudson.model.Run<?,?> run, hudson.model.TaskListener listener, int retryCount)
          Tests whether NaginatorListener should reschedule the build.
 boolean shouldScheduleForMatrixRun(hudson.matrix.MatrixRun run, hudson.model.TaskListener listener)
          A test for each child builds of multi-configuration builds.
 
Methods inherited from class hudson.model.InvisibleAction
getDisplayName, getIconFileName, getUrlName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NaginatorScheduleAction

public NaginatorScheduleAction()
Should always reschedule the build.


NaginatorScheduleAction

public NaginatorScheduleAction(int maxSchedule)
Should reschedule the build for specified times.

Parameters:
maxSchedule - max times to reschedule the build. Less or equal to 0 indicates "always".

NaginatorScheduleAction

public NaginatorScheduleAction(int maxSchedule,
                               @CheckForNull
                               ScheduleDelay delay,
                               boolean rerunMatrixPart)
Should reschedule the build for specified times.

Parameters:
maxSchedule - max times to reschedule the build. Less or equal to 0 indicates "always".
delay - A scheduling policy to trigger a new build.
rerunMatrixPart - tests matrix child builds and triggers only failed parts.
Method Detail

getMaxSchedule

public int getMaxSchedule()
The max times to reschedule the build. Less or equal to 0 indicates "always".

Returns:
the max times to reschedule the build.

getDelay

@Nonnull
public ScheduleDelay getDelay()
Returns:
A scheduling policy to trigger a new build

isRerunMatrixPart

public boolean isRerunMatrixPart()
Returns:
whether to test each child builds to reschedule for multi-configuration builds.

shouldSchedule

public boolean shouldSchedule(@Nonnull
                              hudson.model.Run<?,?> run,
                              @Nonnull
                              hudson.model.TaskListener listener,
                              int retryCount)
Tests whether NaginatorListener should reschedule the build. You can override this method to reschedule the build conditionally. retryCount is passed with 0 when this is the first time to reschedule the build.

Parameters:
run - a build to test. never be a MatrixRun
listener - The listener for this build. This can be used to produce log messages, for example, which becomes a part of the "console output" of this build. But when this method runs, the build is considered completed, so its status cannot be changed anymore.
retryCount - the count the build is rescheduled.
Returns:
whether to reschedule the build.

shouldScheduleForMatrixRun

public boolean shouldScheduleForMatrixRun(@Nonnull
                                          hudson.matrix.MatrixRun run,
                                          @Nonnull
                                          hudson.model.TaskListener listener)
A test for each child builds of multi-configuration builds. You can filter child builds to reschedule.

Parameters:
run -
Returns:

getNoChildStrategy

@Nonnull
public NoChildStrategy getNoChildStrategy()
Returns:
how to do when no children to rerun for a matrix project.
Since:
1.17


Copyright © 2004-2016. All Rights Reserved.