aboutsummaryrefslogtreecommitdiffstats
path: root/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2020-06-24 13:43:21 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2020-06-24 13:45:19 +0200
commitd401fff24ac80a940ef01f80fabc05711a12fe94 (patch)
tree5538a5a1523f57bae811a4b930271f5362e21876 /bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java
parent6821733667528dddeed658205358f6b9dda12090 (diff)
Introduce concept of 'test provided' scoped dependencies
'Test provided' dependencies are treated as 'provided' scoped dependencies when building a test bundle. Other 'test' scoped dependencies are bundled as 'compile'.
Diffstat (limited to 'bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java')
-rw-r--r--bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java18
1 files changed, 13 insertions, 5 deletions
diff --git a/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java b/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java
index a0d0e143724..bc6a970140d 100644
--- a/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java
+++ b/bundle-plugin/src/main/java/com/yahoo/container/plugin/mojo/Artifacts.java
@@ -18,7 +18,10 @@ class Artifacts {
private final List<Artifact> jarArtifactsProvided;
private final List<Artifact> nonJarArtifacts;
- private ArtifactSet(List<Artifact> jarArtifactsToInclude, List<Artifact> jarArtifactsProvided, List<Artifact> nonJarArtifacts) {
+ private ArtifactSet(
+ List<Artifact> jarArtifactsToInclude,
+ List<Artifact> jarArtifactsProvided,
+ List<Artifact> nonJarArtifacts) {
this.jarArtifactsToInclude = jarArtifactsToInclude;
this.jarArtifactsProvided = jarArtifactsProvided;
this.nonJarArtifacts = nonJarArtifacts;
@@ -37,19 +40,24 @@ class Artifacts {
}
}
- static ArtifactSet getArtifacts(MavenProject project) {
+ static ArtifactSet getArtifacts(MavenProject project) { return getArtifacts(project, false, null); }
+ static ArtifactSet getArtifacts(MavenProject project, boolean includeTestArtifacts, String testProvidedConfig) {
+ TestProvidedArtifacts testProvidedArtifacts = TestProvidedArtifacts.from(project.getArtifactMap(), testProvidedConfig);
List<Artifact> jarArtifactsToInclude = new ArrayList<>();
List<Artifact> jarArtifactsProvided = new ArrayList<>();
List<Artifact> nonJarArtifactsToInclude = new ArrayList<>();
List<Artifact> nonJarArtifactsProvided = new ArrayList<>();
-
for (Artifact artifact : project.getArtifacts()) {
if ("jar".equals(artifact.getType())) {
- if (Artifact.SCOPE_COMPILE.equals(artifact.getScope())) {
+ if (includeTestArtifacts && testProvidedArtifacts.isTestProvided(artifact)) {
+ jarArtifactsProvided.add(artifact);
+ } else if (Artifact.SCOPE_COMPILE.equals(artifact.getScope())) {
jarArtifactsToInclude.add(artifact);
} else if (Artifact.SCOPE_PROVIDED.equals(artifact.getScope())) {
jarArtifactsProvided.add(artifact);
+ } else if (includeTestArtifacts && Artifact.SCOPE_TEST.equals(artifact.getScope())) {
+ jarArtifactsToInclude.add(artifact);
}
} else {
if (Artifact.SCOPE_COMPILE.equals(artifact.getScope())) {
@@ -64,6 +72,6 @@ class Artifacts {
}
static Collection<Artifact> getArtifactsToInclude(MavenProject project) {
- return getArtifacts(project).getJarArtifactsToInclude();
+ return getArtifacts(project, false, null).getJarArtifactsToInclude();
}
}