Class AbstractGitSCMSource.SpecificRevisionBuildChooser

java.lang.Object
hudson.plugins.git.util.BuildChooser
jenkins.plugins.git.AbstractGitSCMSource.SpecificRevisionBuildChooser
All Implemented Interfaces:
ExtensionPoint, Describable<BuildChooser>, Serializable
Enclosing class:
AbstractGitSCMSource

public static class AbstractGitSCMSource.SpecificRevisionBuildChooser extends BuildChooser
See Also:
  • Constructor Details

  • Method Details

    • getCandidateRevisions

      public Collection<hudson.plugins.git.Revision> getCandidateRevisions(boolean isPollCall, String singleBranch, org.jenkinsci.plugins.gitclient.GitClient git, TaskListener listener, BuildData buildData, BuildChooserContext context) throws hudson.plugins.git.GitException, IOException, InterruptedException
      Get a list of revisions that are candidates to be built.

      This method is invoked on the node where the workspace exists, which may not be the controller.

      Overrides:
      getCandidateRevisions in class BuildChooser
      Parameters:
      isPollCall - true if this method is called from pollChanges.
      singleBranch - contains the name of a single branch to be built this will be non-null only in the simple case, in advanced cases with multiple repositories and/or branches specified then this value will be null.
      git - Used for invoking Git
      listener - build log
      buildData - build data to be used Information that captures what we did during the last build.
      context - Object that provides access back to the model object. This is because the build chooser can be invoked on an agent where there's no direct access to the build/project for which this is invoked. If isPollCall is false, then call back to both project and build are available. If isPollCall is true, then only the callback to the project is available as there's no contextual build object.
      Returns:
      the candidate revision. Can be an empty set to indicate that there's nothing to build.
      Throws:
      hudson.plugins.git.GitException - on git error
      IOException - on input or output error
      InterruptedException - when interrupted
    • prevBuildForChangelog

      public Build prevBuildForChangelog(String branch, @Nullable BuildData data, org.jenkinsci.plugins.gitclient.GitClient git, BuildChooserContext context) throws IOException, InterruptedException
      Determines the baseline to compute the changelog against.

      BuildChooser.getCandidateRevisions(boolean, String, hudson.plugins.git.IGitAPI, TaskListener, BuildData, BuildChooserContext) determine what commits can be subject for a build, and for each commit it determines the branches that contribute to them.

      Once GitSCM picks up a specific Revision to build, for each branch, in that revision, this method is called to compute the changelog.

      Overrides:
      prevBuildForChangelog in class BuildChooser
      Parameters:
      branch - The branch name.
      data - Information that captures what we did during the last build.
      git - Used for invoking Git
      context - Object that provides access back to the model object. This is because the build chooser can be invoked on an agent where there's no direct access to the build/project for which this is invoked.
      Returns:
      candidate revision. Can be an empty set to indicate that there's nothing to build.
      Throws:
      IOException - on input or output error
      InterruptedException - when interrupted