Class CoverageStep

java.lang.Object
hudson.model.AbstractDescribableImpl<org.jenkinsci.plugins.workflow.steps.Step>
org.jenkinsci.plugins.workflow.steps.Step
io.jenkins.plugins.coverage.metrics.steps.CoverageStep
All Implemented Interfaces:
ExtensionPoint, Describable<org.jenkinsci.plugins.workflow.steps.Step>, Serializable

public class CoverageStep extends org.jenkinsci.plugins.workflow.steps.Step implements Serializable
A pipeline Step that reads and parses coverage results in a build and adds the results to the persisted build results. This step only provides the entry point for pipelines, the actual computation is delegated to an associated Freestyle CoverageRecorder instance.
Author:
Ullrich Hafner
See Also:
  • Constructor Details

    • CoverageStep

      @DataBoundConstructor public CoverageStep()
      Creates a new instance of CoverageStep.
  • Method Details

    • start

      public org.jenkinsci.plugins.workflow.steps.StepExecution start(org.jenkinsci.plugins.workflow.steps.StepContext context) throws Exception
      Specified by:
      start in class org.jenkinsci.plugins.workflow.steps.Step
      Throws:
      Exception
    • setTools

      @DataBoundSetter public void setTools(List<CoverageTool> tools)
      Sets the coverage tools that will scan files and create coverage reports.
      Parameters:
      tools - the coverage tools
    • getTools

      public List<CoverageTool> getTools()
    • setQualityGates

      @DataBoundSetter public void setQualityGates(List<CoverageQualityGate> qualityGates)
      Defines the optional list of quality gates.
      Parameters:
      qualityGates - the quality gates
    • getQualityGates

      public List<CoverageQualityGate> getQualityGates()
    • setId

      @DataBoundSetter public void setId(String id)
      Overrides the default ID of the results. The ID is used as URL of the results and as identifier in UI elements. If no ID is given, then the default ID "coverage".
      Parameters:
      id - the ID of the results
      See Also:
    • getId

      public String getId()
    • setName

      @DataBoundSetter public void setName(String name)
      Overrides the name of the results. The name is used for all labels in the UI. If no name is given, then the default name is used.
      Parameters:
      name - the name of the results
      See Also:
    • getName

      public String getName()
    • setSkipPublishingChecks

      @DataBoundSetter public void setSkipPublishingChecks(boolean skipPublishingChecks)
      Sets whether publishing checks should be skipped or not.
      Parameters:
      skipPublishingChecks - true if publishing checks should be skipped, false otherwise
    • isSkipPublishingChecks

      public boolean isSkipPublishingChecks()
    • setChecksName

      @DataBoundSetter public void setChecksName(String checksName)
      Changes the default name for the SCM checks report.
      Parameters:
      checksName - the name that should be used for the SCM checks report
    • getChecksName

      public String getChecksName()
    • setChecksAnnotationScope

      @DataBoundSetter public void setChecksAnnotationScope(CoverageRecorder.ChecksAnnotationScope checksAnnotationScope)
      Sets the scope of the annotations that should be published to SCM checks.
      Parameters:
      checksAnnotationScope - the scope to use
    • getChecksAnnotationScope

      public CoverageRecorder.ChecksAnnotationScope getChecksAnnotationScope()
    • setSkipSymbolicLinks

      @DataBoundSetter public void setSkipSymbolicLinks(boolean skipSymbolicLinks)
      Specify if traversal of symbolic links will be skipped during directory scanning for coverage reports.
      Parameters:
      skipSymbolicLinks - if symbolic links should be skipped during directory scanning
    • isSkipSymbolicLinks

      public boolean isSkipSymbolicLinks()
    • setIgnoreParsingErrors

      @DataBoundSetter public void setIgnoreParsingErrors(boolean ignoreParsingErrors)
      Specify if parsing errors should be ignored and logged instead of throwing an exception.
      Parameters:
      ignoreParsingErrors - if parsing errors should be ignored and logged instead of throwing an exception
    • isIgnoreParsingErrors

      public boolean isIgnoreParsingErrors()
    • setFailOnError

      @DataBoundSetter public void setFailOnError(boolean failOnError)
      Determines whether to fail the step on errors during the step of recording coverage reports.
      Parameters:
      failOnError - if true then the build will be failed on errors, false then errors are only reported in the UI
    • isFailOnError

      public boolean isFailOnError()
    • setEnabledForFailure

      @DataBoundSetter public void setEnabledForFailure(boolean enabledForFailure)
      Returns whether recording should be enabled for failed builds as well.
      Parameters:
      enabledForFailure - true if recording should be enabled for failed builds as well, false if recording is enabled for successful or unstable builds only
    • isEnabledForFailure

      public boolean isEnabledForFailure()
    • setSourceCodeEncoding

      @DataBoundSetter public void setSourceCodeEncoding(String sourceCodeEncoding)
      Sets the encoding to use to read source files.
      Parameters:
      sourceCodeEncoding - the encoding, e.g. "ISO-8859-1"
    • getSourceCodeEncoding

      public String getSourceCodeEncoding()
    • setSourceDirectories

      @DataBoundSetter public void setSourceDirectories(List<io.jenkins.plugins.prism.SourceCodeDirectory> sourceCodeDirectories)
      Sets the paths to the directories that contain the source code. If not relative and thus not part of the workspace then these directories need to be added in Jenkins global configuration to prevent accessing of forbidden resources.
      Parameters:
      sourceCodeDirectories - directories containing the source code
    • getSourceDirectories

      public Set<io.jenkins.plugins.prism.SourceCodeDirectory> getSourceDirectories()
    • setSourceCodeRetention

      @DataBoundSetter public void setSourceCodeRetention(io.jenkins.plugins.prism.SourceCodeRetention sourceCodeRetention)
      Defines the retention strategy for source code files.
      Parameters:
      sourceCodeRetention - the retention strategy for source code files
    • getSourceCodeRetention

      public io.jenkins.plugins.prism.SourceCodeRetention getSourceCodeRetention()
    • setScm

      @DataBoundSetter public void setScm(String scm)
      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

      public String getScm()