-
-
Notifications
You must be signed in to change notification settings - Fork 29
Description
I want to be able to manually reset the reference build to a newer version. We mark our build as unstable if the quality gates from warningsng and codecoverage are failed. But sometimes we cannot immediately fix these issues and want to reset the reference build to one that is marked as unstable.
We use the freestyle project for our jobs.
Currently I work around this by manually rebuilding after changing the config to also select unstable builds.
Below example config:
"forensics-api@2.4.0">
"plugin-util-api@4.1.0"/>
SUCCESS
0
BLUE
true
"warnings-ng@11.2.2">
"plugin-util-api@4.1.0"/>
**/target/checkstyle-result.xml
false
"plugin-util-api@4.1.0"/>
**/target/spotbugsXml.xml
false
true
"plugin-util-api@4.1.0"/>
**/target/pmd.xml
false
"plugin-util-api@4.1.0"/>
**/target/cpd.xml
false
50
25
"plugin-util-api@4.1.0"/>
false
EVERY_BUILD
true
false
0
0
"analysis-model-api@12.1.0">
LOW
false
true
false
false
true
NEW
false
1.0
UNSTABLE
NEW
AGGREGATION_TOOLS
"coverage@1.13.0">
"java.util.ImmutableCollections$List12" resolves-to="java.util.CollSer" serialization="custom">
<default>
1
default>
<int>1int>
"plugin-util-api@4.1.0"/>
JACOCO
"java.util.ImmutableCollections$List12" resolves-to="java.util.CollSer" serialization="custom">
<default>
1
default>
<int>2int>
0.0
UNSTABLE
BRANCH
PROJECT_DELTA
0.0
UNSTABLE
LINE
PROJECT_DELTA
false
Code Coverage
MODIFIED_LINES
false
false
false
false
LAST_BUILD
Originally reported by khazr, imported from: Reset the reference build
- status: Open
- priority: Minor
- component(s): forensics-api-plugin
- label(s): help-wanted
- resolution: Unresolved
- votes: 0
- watchers: 2
- imported: 20260107-220949
Raw content of original issue
I want to be able to manually reset the reference build to a newer version. We mark our build as unstable if the quality gates from warningsng and codecoverage are failed. But sometimes we cannot immediately fix these issues and want to reset the reference build to one that is marked as unstable.
We use the freestyle project for our jobs.
Currently I work around this by manually rebuilding after changing the config to also select unstable builds.
Below example config:
<io.jenkins.plugins.forensics.reference.SimpleReferenceRecorder plugin="forensics-api@2.4.0"> <jenkins plugin="plugin-util-api@4.1.0"/> <referenceJob/> <requiredResult> <name>SUCCESS</name> <ordinal>0</ordinal> <color>BLUE</color> <completeBuild>true</completeBuild> </requiredResult> </io.jenkins.plugins.forensics.reference.SimpleReferenceRecorder><io.jenkins.plugins.analysis.core.steps.IssuesRecorder plugin="warnings-ng@11.2.2"> <analysisTools> <io.jenkins.plugins.analysis.warnings.CheckStyle> <id/> <name/> <jenkins plugin="plugin-util-api@4.1.0"/> <pattern>**/target/checkstyle-result.xml</pattern> <reportEncoding/> <skipSymbolicLinks>false</skipSymbolicLinks> </io.jenkins.plugins.analysis.warnings.CheckStyle> <io.jenkins.plugins.analysis.warnings.SpotBugs> <id/> <name/> <jenkins plugin="plugin-util-api@4.1.0"/> <pattern>**/target/spotbugsXml.xml</pattern> <reportEncoding/> <skipSymbolicLinks>false</skipSymbolicLinks> <useRankAsPriority>true</useRankAsPriority> </io.jenkins.plugins.analysis.warnings.SpotBugs> <io.jenkins.plugins.analysis.warnings.Pmd> <id/> <name/> <jenkins plugin="plugin-util-api@4.1.0"/> <pattern>**/target/pmd.xml</pattern> <reportEncoding/> <skipSymbolicLinks>false</skipSymbolicLinks> </io.jenkins.plugins.analysis.warnings.Pmd> <io.jenkins.plugins.analysis.warnings.Cpd> <id/> <name/> <jenkins plugin="plugin-util-api@4.1.0"/> <pattern>**/target/cpd.xml</pattern> <reportEncoding/> <skipSymbolicLinks>false</skipSymbolicLinks> <highThreshold>50</highThreshold> <normalThreshold>25</normalThreshold> </io.jenkins.plugins.analysis.warnings.Cpd> <io.jenkins.plugins.analysis.warnings.Java> <id/> <name/> <jenkins plugin="plugin-util-api@4.1.0"/> <pattern/> <reportEncoding/> <skipSymbolicLinks>false</skipSymbolicLinks> </io.jenkins.plugins.analysis.warnings.Java> </analysisTools> <sourceCodeEncoding/> <sourceDirectories/> <sourceCodeRetention>EVERY_BUILD</sourceCodeRetention> <ignoreQualityGate>true</ignoreQualityGate> <failOnError>false</failOnError> <healthy>0</healthy> <unhealthy>0</unhealthy> <minimumSeverity plugin="analysis-model-api@12.1.0"> <name>LOW</name> </minimumSeverity> <filters/> <isEnabledForFailure>false</isEnabledForFailure> <isAggregatingResults>true</isAggregatingResults> <quiet>false</quiet> <isBlameDisabled>false</isBlameDisabled> <skipPublishingChecks>true</skipPublishingChecks> <checksAnnotationScope>NEW</checksAnnotationScope> <skipPostProcessing>false</skipPostProcessing> <qualityGates> <io.jenkins.plugins.analysis.core.util.WarningsQualityGate> <threshold>1.0</threshold> <criticality>UNSTABLE</criticality> <type>NEW</type> </io.jenkins.plugins.analysis.core.util.WarningsQualityGate> </qualityGates> <trendChartType>AGGREGATION_TOOLS</trendChartType> <scm/> </io.jenkins.plugins.analysis.core.steps.IssuesRecorder><io.jenkins.plugins.coverage.metrics.steps.CoverageRecorder plugin="coverage@1.13.0"> <tools class="java.util.ImmutableCollections$List12" resolves-to="java.util.CollSer" serialization="custom"> <java.util.CollSer> <default> <tag>1</tag> </default> <int>1</int> <io.jenkins.plugins.coverage.metrics.steps.CoverageTool> <jenkins plugin="plugin-util-api@4.1.0"/> <pattern/> <parser>JACOCO</parser> </io.jenkins.plugins.coverage.metrics.steps.CoverageTool> </java.util.CollSer> </tools> <qualityGates class="java.util.ImmutableCollections$List12" resolves-to="java.util.CollSer" serialization="custom"> <java.util.CollSer> <default> <tag>1</tag> </default> <int>2</int> <io.jenkins.plugins.coverage.metrics.steps.CoverageQualityGate> <threshold>0.0</threshold> <criticality>UNSTABLE</criticality> <metric>BRANCH</metric> <baseline>PROJECT_DELTA</baseline> </io.jenkins.plugins.coverage.metrics.steps.CoverageQualityGate> <io.jenkins.plugins.coverage.metrics.steps.CoverageQualityGate> <threshold>0.0</threshold> <criticality>UNSTABLE</criticality> <metric>LINE</metric> <baseline>PROJECT_DELTA</baseline> </io.jenkins.plugins.coverage.metrics.steps.CoverageQualityGate> </java.util.CollSer> </qualityGates> <id/> <name/> <skipPublishingChecks>false</skipPublishingChecks> <checksName>Code Coverage</checksName> <checksAnnotationScope>MODIFIED_LINES</checksAnnotationScope> <ignoreParsingErrors>false</ignoreParsingErrors> <failOnError>false</failOnError> <enabledForFailure>false</enabledForFailure> <skipSymbolicLinks>false</skipSymbolicLinks> <scm/> <sourceCodeEncoding/> <sourceDirectories/> <sourceCodeRetention>LAST_BUILD</sourceCodeRetention> </io.jenkins.plugins.coverage.metrics.steps.CoverageRecorder>
- environment:
latest