diff options
author | jonmv <venstad@gmail.com> | 2022-04-29 10:39:14 +0200 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2022-04-29 10:39:14 +0200 |
commit | 41655b155b2e38cd7fed7336a1e24bfa0b8710fe (patch) | |
tree | d1168d5a6a354601224f989981dad33524396f64 /vespa-application-maven-plugin/src | |
parent | 22e411d746558da7884d61dccc7e200255f62bcc (diff) |
Fix parent detection
Diffstat (limited to 'vespa-application-maven-plugin/src')
2 files changed, 34 insertions, 1 deletions
diff --git a/vespa-application-maven-plugin/src/main/java/com/yahoo/container/plugin/mojo/ApplicationMojo.java b/vespa-application-maven-plugin/src/main/java/com/yahoo/container/plugin/mojo/ApplicationMojo.java index 62bb5c53f8c..6b50ea4b360 100644 --- a/vespa-application-maven-plugin/src/main/java/com/yahoo/container/plugin/mojo/ApplicationMojo.java +++ b/vespa-application-maven-plugin/src/main/java/com/yahoo/container/plugin/mojo/ApplicationMojo.java @@ -70,7 +70,7 @@ public class ApplicationMojo extends AbstractMojo { Version parentVersion = null; Artifact parentArtifact = current.getParentArtifact(); - if (parentArtifact != null && (parentArtifact.getGroupId().startsWith("com.yahoo.vespa.") || parentArtifact.getGroupId().startsWith("ai.vespa."))) { + if (parentArtifact != null && isVespaParent(parentArtifact.getGroupId())) { parentVersion = Version.from(parentArtifact.getVersion()); if (parentVersion.compareTo(compileVersion) < 0) throw new IllegalArgumentException("compile version (" + compileVersion + ") cannot be higher than parent version (" + parentVersion + ")"); @@ -93,6 +93,10 @@ public class ApplicationMojo extends AbstractMojo { } } + static boolean isVespaParent(String groupId) { + return groupId.matches("(com\\.yahoo\\.vespa|ai\\.vespa)(\\..+)?"); + } + private void copyBundlesForSubModules(File componentsDir) throws MojoExecutionException { List<String> modules = emptyListIfNull(project.getModules()); for (String module : modules) { diff --git a/vespa-application-maven-plugin/src/test/java/com/yahoo/container/plugin/mojo/ApplicationMojoTest.java b/vespa-application-maven-plugin/src/test/java/com/yahoo/container/plugin/mojo/ApplicationMojoTest.java new file mode 100644 index 00000000000..6f134a5ff86 --- /dev/null +++ b/vespa-application-maven-plugin/src/test/java/com/yahoo/container/plugin/mojo/ApplicationMojoTest.java @@ -0,0 +1,29 @@ +package com.yahoo.container.plugin.mojo; + +import org.junit.Assert; +import org.junit.Test; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; + +/** + * @author jonmv + */ +public class ApplicationMojoTest { + + @Test + public void testRegex() { + assertTrue(ApplicationMojo.isVespaParent("ai.vespa")); + assertTrue(ApplicationMojo.isVespaParent("ai.vespa.hosted")); + assertTrue(ApplicationMojo.isVespaParent("com.yahoo.vespa")); + assertTrue(ApplicationMojo.isVespaParent("com.yahoo.vespa.hosted")); + + assertFalse(ApplicationMojo.isVespaParent("ai")); + assertFalse(ApplicationMojo.isVespaParent("ai.vespa.")); + assertFalse(ApplicationMojo.isVespaParent("ai.vespaxxx.")); + assertFalse(ApplicationMojo.isVespaParent("com.yahoo")); + assertFalse(ApplicationMojo.isVespaParent("com.yahoo.vespa.")); + assertFalse(ApplicationMojo.isVespaParent("com.yahoo.vespaxxx")); + } + +} |