[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

Reply via email to