Class PublishIssuesStep
java.lang.Object
hudson.model.AbstractDescribableImpl<org.jenkinsci.plugins.workflow.steps.Step>
org.jenkinsci.plugins.workflow.steps.Step
io.jenkins.plugins.analysis.core.steps.PublishIssuesStep
- All Implemented Interfaces:
ExtensionPoint
,Describable<org.jenkinsci.plugins.workflow.steps.Step>
,Serializable
public class PublishIssuesStep
extends org.jenkinsci.plugins.workflow.steps.Step
implements Serializable
Publish issues created by a static analysis build. The recorded issues are stored as a
ResultAction
in the
associated Jenkins build. If the issues report has a unique ID, then the created action will use this ID as well.
Otherwise, a default ID is used to publish the results. In any case, the computed ID can be overwritten by specifying
an ID as step parameter.- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Descriptor for this step: defines the context and the UI labels.Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
Constructor Summary
ConstructorDescriptionPublishIssuesStep
(List<AnnotatedReport> issues) Creates a new instance ofPublishIssuesStep
. -
Method Summary
Modifier and TypeMethodDescriptionio.jenkins.plugins.analysis.core.steps.WarningChecksPublisher.ChecksAnnotationScope
boolean
int
getId()
boolean
edu.hm.hafner.analysis.Severity
getName()
getScm()
int
boolean
Deprecated.boolean
isQuiet()
boolean
Returns whether the SCM delta calculation for the new issue detection should be disabled.boolean
Returns whether publishing checks should be skipped.void
setChecksAnnotationScope
(io.jenkins.plugins.analysis.core.steps.WarningChecksPublisher.ChecksAnnotationScope checksAnnotationScope) Sets the scope of the annotations that should be published to SCM checks.void
setFailOnError
(boolean failOnError) Determines whether to fail the step on errors during the step of recording issues.void
setHealthy
(int healthy) Sets the healthy threshold, i.e., the number of issues when health is reported as 100%.void
Defines the ID of the results.void
setIgnoreQualityGate
(boolean ignoreQualityGate) Iftrue
, then the result of the quality gate is ignored when selecting a reference build.void
setMinimumSeverity
(String minimumSeverity) Sets the minimum severity to consider when computing the health report.void
Defines the name of the results.void
setPublishAllIssues
(boolean publishAllIssues) Deprecated.usesetChecksAnnotationScope(ChecksAnnotationScope)
insteadvoid
setQualityGates
(List<WarningsQualityGate> qualityGates) Defines the optional list of quality gates.void
setQuiet
(boolean quiet) Iftrue
, then logger content is muted Iffalse
, then logger content goes to loghandler output.void
Sets the SCM that should be used to find the reference build for.void
setSkipDeltaCalculation
(boolean skipDeltaCalculation) void
setSkipPublishingChecks
(boolean skipPublishingChecks) void
setSourceCodeEncoding
(String sourceCodeEncoding) Sets the encoding to use to read source files.void
setTrendChartType
(TrendChartType trendChartType) Sets the type of the trend chart that should be shown on the job page.void
setUnhealthy
(int unhealthy) Sets the healthy threshold, i.e., the number of issues when health is reported as 0%.org.jenkinsci.plugins.workflow.steps.StepExecution
start
(org.jenkinsci.plugins.workflow.steps.StepContext stepContext) Methods inherited from class org.jenkinsci.plugins.workflow.steps.Step
getDescriptor
-
Constructor Details
-
PublishIssuesStep
Creates a new instance ofPublishIssuesStep
.- Parameters:
issues
- the reports to publish asAction
in theJob
.- Throws:
IllegalArgumentException
- if the array of issues isnull
or empty
-
-
Method Details
-
getIssues
-
setId
Defines the ID of the results. The ID is used as URL of the results and as name in UI elements. If no ID is given, then the ID of the associated result object is used.- Parameters:
id
- the ID of the results
-
getId
-
setName
Defines the name of the results. The name is used for all labels in the UI. If no name is given, then the name of the associatedStaticAnalysisLabelProvider
is used.- Parameters:
name
- the name of the results
-
getName
-
setScm
Sets the SCM that should be used to find the reference build for. The reference recorder will select the SCM based on a substring comparison, there is no need to specify the full name.- Parameters:
scm
- the ID of the SCM to use (a substring of the full ID)
-
getScm
-
setFailOnError
@DataBoundSetter public void setFailOnError(boolean failOnError) Determines whether to fail the step on errors during the step of recording issues.- Parameters:
failOnError
- iftrue
then the build will be failed on errors,false
then errors are only reported in the UI
-
getFailOnError
public boolean getFailOnError() -
isSkipDeltaCalculation
public boolean isSkipDeltaCalculation()Returns whether the SCM delta calculation for the new issue detection should be disabled.- Returns:
true
if the SCM delta calculation for the new issue detection should be disabled.
-
setSkipDeltaCalculation
@DataBoundSetter public void setSkipDeltaCalculation(boolean skipDeltaCalculation) -
isSkipPublishingChecks
public boolean isSkipPublishingChecks()Returns whether publishing checks should be skipped.- Returns:
true
if publishing checks should be skipped,false
otherwise
-
setSkipPublishingChecks
@DataBoundSetter public void setSkipPublishingChecks(boolean skipPublishingChecks) -
setChecksAnnotationScope
@DataBoundSetter public void setChecksAnnotationScope(io.jenkins.plugins.analysis.core.steps.WarningChecksPublisher.ChecksAnnotationScope checksAnnotationScope) Sets the scope of the annotations that should be published to SCM checks.- Parameters:
checksAnnotationScope
- the scope to use
-
getChecksAnnotationScope
public io.jenkins.plugins.analysis.core.steps.WarningChecksPublisher.ChecksAnnotationScope getChecksAnnotationScope() -
isPublishAllIssues
Deprecated.usegetChecksAnnotationScope()
insteadReturns whether all issues should be published using the Checks API. If set tofalse
only new issues will be published.- Returns:
true
if all issues should be published,false
if only new issues should be published
-
setPublishAllIssues
Deprecated.usesetChecksAnnotationScope(ChecksAnnotationScope)
insteadReturns whether all issues should be published to SCM checks.- Parameters:
publishAllIssues
- iftrue
then all issues should be published, otherwise only new issues
-
setIgnoreQualityGate
@DataBoundSetter public void setIgnoreQualityGate(boolean ignoreQualityGate) Iftrue
, then the result of the quality gate is ignored when selecting a reference build. This option is disabled by default, so a failing quality gate will be passed from build to build until the original reason for the failure has been resolved.- Parameters:
ignoreQualityGate
- iftrue
then the result of the quality gate is ignored, otherwise only build with a successful quality gate are selected
-
getIgnoreQualityGate
public boolean getIgnoreQualityGate() -
setQuiet
@DataBoundSetter public void setQuiet(boolean quiet) Iftrue
, then logger content is muted Iffalse
, then logger content goes to loghandler output.- Parameters:
quiet
- iftrue
then logger content is muted.
-
isQuiet
public boolean isQuiet() -
getSourceCodeEncoding
-
setSourceCodeEncoding
Sets the encoding to use to read source files.- Parameters:
sourceCodeEncoding
- the encoding, e.g. "ISO-8859-1"
-
getHealthy
public int getHealthy() -
setHealthy
@DataBoundSetter public void setHealthy(int healthy) Sets the healthy threshold, i.e., the number of issues when health is reported as 100%.- Parameters:
healthy
- the number of issues when health is reported as 100%
-
getUnhealthy
public int getUnhealthy() -
setUnhealthy
@DataBoundSetter public void setUnhealthy(int unhealthy) Sets the healthy threshold, i.e., the number of issues when health is reported as 0%.- Parameters:
unhealthy
- the number of issues when health is reported as 0%
-
getMinimumSeverity
-
getMinimumSeverityAsSeverity
@CheckForNull public edu.hm.hafner.analysis.Severity getMinimumSeverityAsSeverity() -
setMinimumSeverity
Sets the minimum severity to consider when computing the health report. Issues with a severity less than this value will be ignored.- Parameters:
minimumSeverity
- the severity to consider
-
setTrendChartType
Sets the type of the trend chart that should be shown on the job page.- Parameters:
trendChartType
- the type of the trend chart to use
-
getTrendChartType
-
setQualityGates
Defines the optional list of quality gates.- Parameters:
qualityGates
- the quality gates
-
getQualityGates
-
start
public org.jenkinsci.plugins.workflow.steps.StepExecution start(org.jenkinsci.plugins.workflow.steps.StepContext stepContext) - Specified by:
start
in classorg.jenkinsci.plugins.workflow.steps.Step
-
getChecksAnnotationScope()
instead