Interface SubTask

All Superinterfaces:
ITask, ModelObject, ResourceActivity
All Known Subinterfaces:
BuildableItem, BuildableItemWithBuildWrappers, ParameterizedJobMixIn.ParameterizedJob<JobT,RunT>, Queue.FlyweightTask, Queue.NonBlockingTask, Queue.Task, Queue.TransientTask, SCMedItem
All Known Implementing Classes:
AbstractProject, AbstractQueueTask, AbstractSubTask, FreeStyleProject, Project, QueueTaskFilter

public interface SubTask extends ResourceActivity, ITask
A component of Queue.Task that represents a computation carried out by a single Executor. A Queue.Task consists of a number of SubTask.
Since:
1.377
  • Method Details

    • getAssignedLabel

      default Label getAssignedLabel()
      If this task needs to be run on a node with a particular label, return that Label. Otherwise null, indicating it can run on anywhere.
      Returns:
      by default, null
    • getLastBuiltOn

      @Deprecated default Node getLastBuiltOn()
      Deprecated.
      Unused.
      If the previous execution of this task run on a certain node and this task prefers to run on the same node, return that. Otherwise null.
      Returns:
      by default, null
    • getEstimatedDuration

      default long getEstimatedDuration()
      Estimate of how long will it take to execute this task. Measured in milliseconds.
      Returns:
      -1 if it's impossible to estimate (the default)
    • createExecutable

      @CheckForNull Queue.Executable createExecutable() throws IOException
      Creates an object which performs the actual execution of the task.
      Returns:
      executable to be launched or null if the executable cannot be created (e.g. AbstractProject is disabled)
      Throws:
      IOException - executable cannot be created
    • getOwnerTask

      @NonNull default Queue.Task getOwnerTask()
      Gets the task that this subtask belongs to.
      Returns:
      by default, this
      See Also:
    • getOwnerExecutable

      @CheckForNull default Queue.Executable getOwnerExecutable()
      If this task is associated with an executable of getOwnerTask(), finds that.
      Returns:
      by default, null
      Since:
      2.389
      See Also:
    • getSameNodeConstraint

      default Object getSameNodeConstraint()
      If a subset of SubTasks of a Queue.Task needs to be collocated with other SubTasks, those SubTasks should return the equal object here. If null, the execution unit isn't under a colocation constraint.
      Returns:
      by default, null
    • getUrl

      default String getUrl()
      A subtask may not be reachable by its own URL. In that case, this method should return null.
      Specified by:
      getUrl in interface ITask
      Returns:
      the URL where to reach specifically this subtask, relative to Jenkins URL. If non-null, must end with '/'.