[KARAF-4787] Remove the generate goal and add the verify goal from the feature packaging
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/013416ea Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/013416ea Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/013416ea Branch: refs/heads/master Commit: 013416ea31fdd24d5903befadc6f4a11dd770123 Parents: 597a277 Author: Guillaume Nodet <[email protected]> Authored: Fri Oct 21 14:49:54 2016 +0200 Committer: Guillaume Nodet <[email protected]> Committed: Fri Oct 21 14:49:54 2016 +0200 ---------------------------------------------------------------------- .../aggregate-features/pom.xml | 16 ++++------------ .../dependencies-features/pom.xml | 18 +++++------------- .../dependencies-features/pom.xml | 18 +++++------------- .../dependencies-features/pom.xml | 18 +++++------------- .../dependency-feature-a/pom.xml | 3 +++ .../dependency-feature-c/pom.xml | 3 +++ .../it/test-feature-use-base-version/pom.xml | 3 +++ .../feature/pom.xml | 1 + .../feature/pom.xml | 1 + .../it/test-feature-use-version-range/pom.xml | 1 + .../dependency-feature-a/pom.xml | 3 +++ .../dependency-feature-b/pom.xml | 12 +++--------- .../features/GenerateDescriptorMojo.java | 20 ++++++++++++++++++++ .../resources/META-INF/plexus/components.xml | 6 ++++-- 14 files changed, 61 insertions(+), 62 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-aggregate-features/aggregate-features/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-aggregate-features/aggregate-features/pom.xml b/tooling/karaf-maven-plugin/src/it/test-aggregate-features/aggregate-features/pom.xml index e46bb4f..4ea5632 100644 --- a/tooling/karaf-maven-plugin/src/it/test-aggregate-features/aggregate-features/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-aggregate-features/aggregate-features/pom.xml @@ -76,18 +76,10 @@ <artifactId>karaf-maven-plugin</artifactId> <version>@pom.version@</version> <extensions>true</extensions> - <executions> - <execution> - <id>generate-features-file</id> - <phase>package</phase> - <goals> - <goal>features-generate-descriptor</goal> - </goals> - <configuration> - <aggregateFeatures>true</aggregateFeatures> - </configuration> - </execution> - </executions> + <configuration> + <enableGeneration>true</enableGeneration> + <aggregateFeatures>true</aggregateFeatures> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-check-dependencies-failure/dependencies-features/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-check-dependencies-failure/dependencies-features/pom.xml b/tooling/karaf-maven-plugin/src/it/test-check-dependencies-failure/dependencies-features/pom.xml index 2885677..de53fd6 100644 --- a/tooling/karaf-maven-plugin/src/it/test-check-dependencies-failure/dependencies-features/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-check-dependencies-failure/dependencies-features/pom.xml @@ -76,19 +76,11 @@ <artifactId>karaf-maven-plugin</artifactId> <version>@pom.version@</version> <extensions>true</extensions> - <executions> - <execution> - <id>generate-features-file</id> - <phase>package</phase> - <goals> - <goal>features-generate-descriptor</goal> - </goals> - <configuration> - <aggregateFeatures>true</aggregateFeatures> - <checkDependencyChange>true</checkDependencyChange> - </configuration> - </execution> - </executions> + <configuration> + <enableGeneration>true</enableGeneration> + <aggregateFeatures>true</aggregateFeatures> + <checkDependencyChange>true</checkDependencyChange> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-check-dependencies/dependencies-features/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-check-dependencies/dependencies-features/pom.xml b/tooling/karaf-maven-plugin/src/it/test-check-dependencies/dependencies-features/pom.xml index d6f8506..f876c26 100644 --- a/tooling/karaf-maven-plugin/src/it/test-check-dependencies/dependencies-features/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-check-dependencies/dependencies-features/pom.xml @@ -76,19 +76,11 @@ <artifactId>karaf-maven-plugin</artifactId> <version>@pom.version@</version> <extensions>true</extensions> - <executions> - <execution> - <id>generate-features-file</id> - <phase>package</phase> - <goals> - <goal>features-generate-descriptor</goal> - </goals> - <configuration> - <aggregateFeatures>true</aggregateFeatures> - <checkDependencyChange>true</checkDependencyChange> - </configuration> - </execution> - </executions> + <configuration> + <enableGeneration>true</enableGeneration> + <aggregateFeatures>true</aggregateFeatures> + <checkDependencyChange>true</checkDependencyChange> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependencies-features/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependencies-features/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependencies-features/pom.xml index 3b232ab..6382df5 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependencies-features/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependencies-features/pom.xml @@ -62,19 +62,11 @@ <artifactId>karaf-maven-plugin</artifactId> <version>@pom.version@</version> <extensions>true</extensions> - <executions> - <execution> - <id>generate-features-file</id> - <phase>package</phase> - <goals> - <goal>features-generate-descriptor</goal> - </goals> - <configuration> - <aggregateFeatures>true</aggregateFeatures> - <checkDependencyChange>true</checkDependencyChange> - </configuration> - </execution> - </executions> + <configuration> + <enableGeneration>true</enableGeneration> + <aggregateFeatures>true</aggregateFeatures> + <checkDependencyChange>true</checkDependencyChange> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-a/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-a/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-a/pom.xml index d11c7ee..f596bdf 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-a/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-a/pom.xml @@ -59,6 +59,9 @@ <goals> <goal>features-generate-descriptor</goal> </goals> + <configuration> + <enableGeneration>true</enableGeneration> + </configuration> </execution> </executions> </plugin> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-c/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-c/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-c/pom.xml index 6717450..f7f0987 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-c/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-dependencies/dependency-feature-c/pom.xml @@ -59,6 +59,9 @@ <goals> <goal>features-generate-descriptor</goal> </goals> + <configuration> + <enableGeneration>true</enableGeneration> + </configuration> </execution> </executions> </plugin> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-use-base-version/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-use-base-version/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-use-base-version/pom.xml index c8b8dc9..d3262b7 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-use-base-version/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-use-base-version/pom.xml @@ -41,6 +41,9 @@ <artifactId>karaf-maven-plugin</artifactId> <version>@pom.version@</version> <extensions>true</extensions> + <configuration> + <enableGeneration>true</enableGeneration> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transfer-properties/feature/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transfer-properties/feature/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transfer-properties/feature/pom.xml index f6d3f1e..e963de0 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transfer-properties/feature/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transfer-properties/feature/pom.xml @@ -42,6 +42,7 @@ <version>@pom.version@</version> <extensions>true</extensions> <configuration> + <enableGeneration>true</enableGeneration> <useVersionRange>true</useVersionRange> <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges> </configuration> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transitive/feature/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transitive/feature/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transitive/feature/pom.xml index f6d3f1e..e963de0 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transitive/feature/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range-transitive/feature/pom.xml @@ -42,6 +42,7 @@ <version>@pom.version@</version> <extensions>true</extensions> <configuration> + <enableGeneration>true</enableGeneration> <useVersionRange>true</useVersionRange> <includeTransitiveVersionRanges>true</includeTransitiveVersionRanges> </configuration> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range/pom.xml b/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range/pom.xml index 2c60d55..d319612 100644 --- a/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-feature-use-version-range/pom.xml @@ -42,6 +42,7 @@ <version>@pom.version@</version> <extensions>true</extensions> <configuration> + <enableGeneration>true</enableGeneration> <useVersionRange>true</useVersionRange> </configuration> </plugin> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-a/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-a/pom.xml b/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-a/pom.xml index 4a7e0a2..231b3a2 100644 --- a/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-a/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-a/pom.xml @@ -61,6 +61,9 @@ </goals> </execution> </executions> + <configuration> + <enableGeneration>true</enableGeneration> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-b/pom.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-b/pom.xml b/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-b/pom.xml index 8f02f51..7920d21 100644 --- a/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-b/pom.xml +++ b/tooling/karaf-maven-plugin/src/it/test-repository-dependencies/dependency-feature-b/pom.xml @@ -52,15 +52,9 @@ <artifactId>karaf-maven-plugin</artifactId> <version>@pom.version@</version> <extensions>true</extensions> - <executions> - <execution> - <id>generate-features-file</id> - <phase>package</phase> - <goals> - <goal>features-generate-descriptor</goal> - </goals> - </execution> - </executions> + <configuration> + <enableGeneration>true</enableGeneration> + </configuration> </plugin> </plugins> </build> http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java index 821cc93..73a58fa 100644 --- a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java +++ b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/GenerateDescriptorMojo.java @@ -251,6 +251,9 @@ public class GenerateDescriptorMojo extends MojoSupport { @Parameter(defaultValue = "false") private boolean includeTransitiveVersionRanges; + @Parameter + private Boolean enableGeneration; + // ************************************************* // READ-ONLY MAVEN PLUGIN PARAMETERS // ************************************************* @@ -292,6 +295,23 @@ public class GenerateDescriptorMojo extends MojoSupport { public void execute() throws MojoExecutionException, MojoFailureException { try { + if (enableGeneration == null) { + String packaging = this.project.getPackaging(); + enableGeneration = !"feature".equals(packaging) && !"feature".equals(packaging); + } + + if (!enableGeneration) { + if (inputFile.exists()) { + File dir = outputFile.getParentFile(); + if (!dir.isDirectory() && !dir.mkdirs()) { + throw new MojoExecutionException("Could not create directory for features file: " + dir); + } + filter(inputFile, outputFile); + projectHelper.attachArtifact(project, attachmentArtifactType, attachmentArtifactClassifier, outputFile); + } + return; + } + this.dependencyHelper = DependencyHelperFactory.createDependencyHelper(this.container, this.project, this.mavenSession, getLog()); this.dependencyHelper.getDependencies(project, includeTransitiveDependency); this.localDependencies = dependencyHelper.getLocalDependencies(); http://git-wip-us.apache.org/repos/asf/karaf/blob/013416ea/tooling/karaf-maven-plugin/src/main/resources/META-INF/plexus/components.xml ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/main/resources/META-INF/plexus/components.xml b/tooling/karaf-maven-plugin/src/main/resources/META-INF/plexus/components.xml index dc52797..c86b142 100644 --- a/tooling/karaf-maven-plugin/src/main/resources/META-INF/plexus/components.xml +++ b/tooling/karaf-maven-plugin/src/main/resources/META-INF/plexus/components.xml @@ -30,7 +30,8 @@ <id>default</id> <phases> <compile> - org.apache.karaf.tooling:karaf-maven-plugin:features-generate-descriptor + org.apache.karaf.tooling:karaf-maven-plugin:features-generate-descriptor, + org.apache.karaf.tooling:karaf-maven-plugin:verify </compile> <install> org.apache.maven.plugins:maven-install-plugin:install @@ -69,7 +70,8 @@ org.apache.maven.plugins:maven-resources-plugin:resources </process-resources> <compile> - org.apache.karaf.tooling:karaf-maven-plugin:features-generate-descriptor + org.apache.karaf.tooling:karaf-maven-plugin:features-generate-descriptor, + org.apache.karaf.tooling:karaf-maven-plugin:verify </compile> <package> org.apache.karaf.tooling:karaf-maven-plugin:kar
