Skip to content

Commit 2e75645

Browse files
authored
bugfix: mark all extensions depending on optional plugins as optional (#933)
1 parent 6289484 commit 2e75645

File tree

9 files changed

+20
-18
lines changed

9 files changed

+20
-18
lines changed

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/ConcordionTestsPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import edu.umd.cs.findbugs.annotations.NonNull;
2222
import htmlpublisher.HtmlPublisher;
2323
import htmlpublisher.HtmlPublisherTarget;
24-
import hudson.Extension;
2524
import hudson.FilePath;
2625
import hudson.model.Run;
2726
import hudson.model.StreamBuildListener;
@@ -41,6 +40,7 @@
4140
import org.jenkinsci.plugins.pipeline.maven.MavenPublisher;
4241
import org.jenkinsci.plugins.pipeline.maven.Messages;
4342
import org.jenkinsci.plugins.pipeline.maven.util.XmlUtils;
43+
import org.jenkinsci.plugins.variant.OptionalExtension;
4444
import org.jenkinsci.plugins.workflow.steps.StepContext;
4545
import org.kohsuke.stapler.DataBoundConstructor;
4646
import org.w3c.dom.Element;
@@ -168,7 +168,7 @@ private Collection<String> findConcordionOutputDirPatterns(@NonNull List<Element
168168
}
169169

170170
@Symbol("concordionPublisher")
171-
@Extension
171+
@OptionalExtension(requirePlugins = "htmlpublisher")
172172
public static class DescriptorImpl extends MavenPublisher.DescriptorImpl {
173173
@NonNull
174174
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/FindbugsAnalysisPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
package org.jenkinsci.plugins.pipeline.maven.publishers;
2626

2727
import edu.umd.cs.findbugs.annotations.NonNull;
28-
import hudson.Extension;
2928
import hudson.FilePath;
3029
import hudson.Launcher;
3130
import hudson.model.Run;
@@ -42,6 +41,7 @@
4241
import org.jenkinsci.plugins.pipeline.maven.MavenSpyLogProcessor;
4342
import org.jenkinsci.plugins.pipeline.maven.Messages;
4443
import org.jenkinsci.plugins.pipeline.maven.util.XmlUtils;
44+
import org.jenkinsci.plugins.variant.OptionalExtension;
4545
import org.jenkinsci.plugins.workflow.steps.StepContext;
4646
import org.kohsuke.stapler.DataBoundConstructor;
4747
import org.w3c.dom.Element;
@@ -249,7 +249,7 @@ public void process(@NonNull StepContext context, @NonNull Element mavenSpyLogsE
249249
* Don't use symbol "findbugs", it would collide with hudson.plugins.findbugs.FindBugsPublisher
250250
*/
251251
@Symbol("findbugsPublisher")
252-
@Extension
252+
@OptionalExtension(requirePlugins = "findbugs")
253253
public static class DescriptorImpl extends AbstractHealthAwarePublisher.DescriptorImpl {
254254
@NonNull
255255
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/InvokerRunsPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626

2727
import edu.umd.cs.findbugs.annotations.NonNull;
2828
import edu.umd.cs.findbugs.annotations.Nullable;
29-
import hudson.Extension;
3029
import hudson.FilePath;
3130
import hudson.Launcher;
3231
import hudson.model.Run;
@@ -46,6 +45,7 @@
4645
import org.jenkinsci.plugins.pipeline.maven.MavenSpyLogProcessor;
4746
import org.jenkinsci.plugins.pipeline.maven.Messages;
4847
import org.jenkinsci.plugins.pipeline.maven.util.XmlUtils;
48+
import org.jenkinsci.plugins.variant.OptionalExtension;
4949
import org.jenkinsci.plugins.workflow.graph.FlowNode;
5050
import org.jenkinsci.plugins.workflow.steps.StepContext;
5151
import org.kohsuke.stapler.DataBoundConstructor;
@@ -299,7 +299,7 @@ protected String expandAndRelativize(
299299
* Don't use the symbol "junit", it would collide with hudson.tasks.junit.JUnitResultArchiver
300300
*/
301301
@Symbol("invokerPublisher")
302-
@Extension
302+
@OptionalExtension(requirePlugins = "maven-invoker-plugin")
303303
public static class DescriptorImpl extends MavenPublisher.DescriptorImpl {
304304
@NonNull
305305
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/JGivenTestsPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121
import static org.jenkinsci.plugins.pipeline.maven.publishers.DependenciesLister.listDependencies;
2222

2323
import edu.umd.cs.findbugs.annotations.NonNull;
24-
import hudson.Extension;
2524
import hudson.FilePath;
2625
import hudson.Launcher;
2726
import hudson.model.Run;
@@ -38,6 +37,7 @@
3837
import org.jenkinsci.plugins.pipeline.maven.MavenDependency;
3938
import org.jenkinsci.plugins.pipeline.maven.MavenPublisher;
4039
import org.jenkinsci.plugins.pipeline.maven.Messages;
40+
import org.jenkinsci.plugins.variant.OptionalExtension;
4141
import org.jenkinsci.plugins.workflow.steps.StepContext;
4242
import org.kohsuke.stapler.DataBoundConstructor;
4343
import org.w3c.dom.Element;
@@ -120,7 +120,7 @@ public void process(@NonNull final StepContext context, @NonNull final Element m
120120
}
121121

122122
@Symbol("jgivenPublisher")
123-
@Extension
123+
@OptionalExtension(requirePlugins = "jgiven")
124124
public static class DescriptorImpl extends MavenPublisher.DescriptorImpl {
125125
@NonNull
126126
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/JacocoReportPublisher.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,7 @@ public void process(@NonNull StepContext context, @NonNull Element mavenSpyLogsE
122122

123123
@Symbol("jacocoPublisher")
124124
@Extension
125+
// @OptionalExtension(requirePlugins = "jacoco")
125126
public static class DescriptorImpl extends AbstractHealthAwarePublisher.DescriptorImpl {
126127
@NonNull
127128
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/JunitTestsPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
import edu.umd.cs.findbugs.annotations.CheckForNull;
2828
import edu.umd.cs.findbugs.annotations.NonNull;
2929
import edu.umd.cs.findbugs.annotations.Nullable;
30-
import hudson.Extension;
3130
import hudson.FilePath;
3231
import hudson.model.StreamBuildListener;
3332
import hudson.model.TaskListener;
@@ -48,6 +47,7 @@
4847
import org.jenkinsci.plugins.pipeline.maven.MavenSpyLogProcessor;
4948
import org.jenkinsci.plugins.pipeline.maven.Messages;
5049
import org.jenkinsci.plugins.pipeline.maven.util.XmlUtils;
50+
import org.jenkinsci.plugins.variant.OptionalExtension;
5151
import org.jenkinsci.plugins.workflow.steps.StepContext;
5252
import org.kohsuke.stapler.DataBoundConstructor;
5353
import org.kohsuke.stapler.DataBoundSetter;
@@ -399,7 +399,7 @@ public String toString() {
399399
* Don't use the symbol "junit", it would collide with hudson.tasks.junit.JUnitResultArchiver
400400
*/
401401
@Symbol("junitPublisher")
402-
@Extension
402+
@OptionalExtension(requirePlugins = "junit")
403403
public static class DescriptorImpl extends MavenPublisher.DescriptorImpl {
404404
@NonNull
405405
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/SpotBugsAnalysisPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@
2525
package org.jenkinsci.plugins.pipeline.maven.publishers;
2626

2727
import edu.umd.cs.findbugs.annotations.NonNull;
28-
import hudson.Extension;
2928
import hudson.FilePath;
3029
import hudson.Launcher;
3130
import hudson.model.Run;
@@ -40,6 +39,7 @@
4039
import org.jenkinsci.plugins.pipeline.maven.MavenSpyLogProcessor;
4140
import org.jenkinsci.plugins.pipeline.maven.Messages;
4241
import org.jenkinsci.plugins.pipeline.maven.util.XmlUtils;
42+
import org.jenkinsci.plugins.variant.OptionalExtension;
4343
import org.jenkinsci.plugins.workflow.steps.StepContext;
4444
import org.kohsuke.stapler.DataBoundConstructor;
4545
import org.w3c.dom.Element;
@@ -247,7 +247,7 @@ public void process(@NonNull StepContext context, @NonNull Element mavenSpyLogsE
247247
}
248248

249249
@Symbol("spotbugsPublisher")
250-
@Extension
250+
@OptionalExtension(requirePlugins = "findbugs")
251251
public static class DescriptorImpl extends AbstractHealthAwarePublisher.DescriptorImpl {
252252
@NonNull
253253
@Override

pipeline-maven/src/main/java/org/jenkinsci/plugins/pipeline/maven/publishers/TasksScannerPublisher.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package org.jenkinsci.plugins.pipeline.maven.publishers;
22

33
import edu.umd.cs.findbugs.annotations.NonNull;
4-
import hudson.Extension;
54
import hudson.FilePath;
65
import hudson.Launcher;
76
import hudson.model.Run;
@@ -20,6 +19,7 @@
2019
import org.jenkinsci.plugins.pipeline.maven.MavenArtifact;
2120
import org.jenkinsci.plugins.pipeline.maven.Messages;
2221
import org.jenkinsci.plugins.pipeline.maven.util.XmlUtils;
22+
import org.jenkinsci.plugins.variant.OptionalExtension;
2323
import org.jenkinsci.plugins.workflow.steps.StepContext;
2424
import org.kohsuke.stapler.DataBoundConstructor;
2525
import org.kohsuke.stapler.DataBoundSetter;
@@ -259,7 +259,7 @@ public void setAsRegexp(boolean asRegexp) {
259259
}
260260

261261
@Symbol("openTasksPublisher")
262-
@Extension
262+
@OptionalExtension(requirePlugins = "tasks")
263263
public static class DescriptorImpl extends AbstractHealthAwarePublisher.DescriptorImpl {
264264
@NonNull
265265
@Override

pipeline-maven/src/test/java/org/jenkinsci/plugins/pipeline/maven/WithMavenStepNoOptionalsTest.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,8 @@ public class WithMavenStepNoOptionalsTest {
3636
@Rule
3737
public RealJenkinsRule jenkinsRule = new RealJenkinsRule()
3838
.omitPlugins(
39-
"mysql-api",
40-
"postgresql-api",
41-
"maven-plugin",
39+
"coverage",
40+
"findbugs",
4241
"flaky-test-handler",
4342
"htmlpublisher",
4443
"jacoco",
@@ -47,8 +46,10 @@ public class WithMavenStepNoOptionalsTest {
4746
"junit-attachments",
4847
"matrix-project",
4948
"maven-invoker-plugin",
49+
"maven-plugin",
50+
"mysql-api",
5051
"pipeline-build-step",
51-
"findbugs",
52+
"postgresql-api",
5253
"tasks");
5354

5455
@Test

0 commit comments

Comments
 (0)