public abstract class Publisher extends BuildStepCompatibilityLayer implements Describable<Publisher>
BuildSteps that run after the build is completed.
Starting 1.178, publishers are exposed to all kinds of different
project type, not just the freestyle project type (in particular,
the native maven2 job type.) This is convenient default for
Publishers in particular initially, but we encourage advanced
plugins to consider writing MavenReporter, as it offers the
potential of reducing the amount of configuration needed to run the plugin.
For those plugins that don't want
Publisher to show up in
different job type, use
BuildStepDescriptor for the base type
of your descriptor to control which job type it supports.
|Modifier and Type||Class and Description|
|Modifier||Constructor and Description|
|Modifier and Type||Method and Description|
Returns all the registered
Gets the descriptor for this instance.
Return true if this
getProjectAction, getProjectActions, perform, perform, prebuild
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
@Deprecated protected Publisher()
@Deprecated public boolean prebuild(Build build, BuildListener listener)
@Deprecated public Action getProjectAction(Project project)
public boolean needsToRunAfterFinalized()
Publisherneeds to run after the build result is fully finalized.
The execution of normal
Publishers are considered within a part
of the build. This allows publishers to mark the build as a failure, or
to include their execution time in the total build time.
So normally, that is the preferable behavior, but in a few cases
this is problematic. One of such cases is when a publisher needs to
trigger other builds, which in turn need to see this build as a
completed build. Those plugins that need to do this can return true
from this method, so that the
BuildStepCompatibilityLayer.perform(AbstractBuild, Launcher, BuildListener)
method is called after the build is marked as completed.
Publisher behaves this way, note that they can no longer
change the build status anymore.
public Descriptor<Publisher> getDescriptor()
Descriptor is a singleton for every concrete
implementation, so if
a.getClass() == b.getClass() then by default
a.getDescriptor() == b.getDescriptor() as well.
(In rare cases a single implementation class may be used for instances with distinct descriptors.)
Copyright © 2004–2022. All rights reserved.