You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2016/10/21 13:59:40 UTC
[1/3] karaf git commit: [KARAF-4787] Don't use the
features-generate-descriptor inside our build
Repository: karaf
Updated Branches:
refs/heads/master be41010a3 -> 013416ea3
[KARAF-4787] Don't use the features-generate-descriptor inside our build
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/3065ace3
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/3065ace3
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/3065ace3
Branch: refs/heads/master
Commit: 3065ace3b7196c93293b07afbac6c15ceddba048
Parents: be41010
Author: Guillaume Nodet <gn...@apache.org>
Authored: Fri Oct 21 09:54:17 2016 +0200
Committer: Guillaume Nodet <gn...@apache.org>
Committed: Fri Oct 21 09:54:17 2016 +0200
----------------------------------------------------------------------
assemblies/features/enterprise/pom.xml | 26 +++++++++++-------
assemblies/features/framework/pom.xml | 28 ++++---------------
assemblies/features/spring/pom.xml | 27 ++++++++++--------
assemblies/features/standard/pom.xml | 28 ++++++++++++-------
assemblies/features/static/pom.xml | 28 ++++---------------
.../static/src/main/feature/feature.xml | 29 ++++++++++++++++++++
.../static/src/main/feature/features.xml | 29 --------------------
7 files changed, 89 insertions(+), 106 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/enterprise/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/enterprise/pom.xml b/assemblies/features/enterprise/pom.xml
index 5b54c1b..6a8675f 100644
--- a/assemblies/features/enterprise/pom.xml
+++ b/assemblies/features/enterprise/pom.xml
@@ -188,23 +188,29 @@
</dependencies>
<build>
+ <resources>
+ <resource>
+ <directory>${project.basedir}/src/main/feature</directory>
+ <filtering>true</filtering>
+ <targetPath>${project.build.directory}/feature</targetPath>
+ </resource>
+ </resources>
<plugins>
<plugin>
- <groupId>org.apache.karaf.tooling</groupId>
- <artifactId>karaf-maven-plugin</artifactId>
- <configuration>
- </configuration>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
- <id>compile</id>
- <phase>generate-resources</phase>
<goals>
- <goal>features-generate-descriptor</goal>
+ <goal>resources</goal>
</goals>
- <configuration>
- <addBundlesToPrimaryFeature>false</addBundlesToPrimaryFeature>
- </configuration>
</execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.karaf.tooling</groupId>
+ <artifactId>karaf-maven-plugin</artifactId>
+ <executions>
<execution>
<id>verify</id>
<phase>process-resources</phase>
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/framework/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/framework/pom.xml b/assemblies/features/framework/pom.xml
index b4806a6..b577001 100644
--- a/assemblies/features/framework/pom.xml
+++ b/assemblies/features/framework/pom.xml
@@ -173,6 +173,11 @@
<build>
<resources>
<resource>
+ <directory>${project.basedir}/src/main/feature</directory>
+ <filtering>true</filtering>
+ <targetPath>${project.build.directory}/feature</targetPath>
+ </resource>
+ <resource>
<directory>${project.basedir}/src/main/resources</directory>
<filtering>false</filtering>
<includes>
@@ -254,31 +259,8 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<version>${project.version}</version>
- <configuration>
- <startLevel>30</startLevel>
- <!--<checkDependencyChange>true</checkDependencyChange>-->
- <!--<overwriteChangedDependencies>true</overwriteChangedDependencies>-->
- <!--<failOnDependencyChange>false</failOnDependencyChange>-->
- </configuration>
<executions>
<execution>
- <id>compile</id>
- <phase>compile</phase>
- <goals>
- <goal>features-generate-descriptor</goal>
- </goals>
- <configuration>
- <excludedArtifactIds>
- <excludedArtifactId>slf4j-api</excludedArtifactId>
- <excludedArtifactId>sshd-core</excludedArtifactId>
- <excludedArtifactId>jline</excludedArtifactId>
- <excludedArtifactId>core</excludedArtifactId>
- <excludedArtifactId>org.apache.karaf.region.core</excludedArtifactId>
- <excludedArtifactId>org.eclipse.equinox.region</excludedArtifactId>
- </excludedArtifactIds>
- </configuration>
- </execution>
- <execution>
<id>package</id>
<goals>
<goal>kar</goal>
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/spring/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/spring/pom.xml b/assemblies/features/spring/pom.xml
index 3fff381..3ed9845 100644
--- a/assemblies/features/spring/pom.xml
+++ b/assemblies/features/spring/pom.xml
@@ -164,24 +164,29 @@
</dependencies>
<build>
+ <resources>
+ <resource>
+ <directory>${project.basedir}/src/main/feature</directory>
+ <filtering>true</filtering>
+ <targetPath>${project.build.directory}/feature</targetPath>
+ </resource>
+ </resources>
<plugins>
<plugin>
- <groupId>org.apache.karaf.tooling</groupId>
- <artifactId>karaf-maven-plugin</artifactId>
- <configuration>
- <startLevel>30</startLevel>
- </configuration>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
- <id>compile</id>
- <phase>generate-resources</phase>
<goals>
- <goal>features-generate-descriptor</goal>
+ <goal>resources</goal>
</goals>
- <configuration>
- <addBundlesToPrimaryFeature>false</addBundlesToPrimaryFeature>
- </configuration>
</execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.karaf.tooling</groupId>
+ <artifactId>karaf-maven-plugin</artifactId>
+ <executions>
<execution>
<id>verify</id>
<phase>process-resources</phase>
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/standard/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/standard/pom.xml b/assemblies/features/standard/pom.xml
index 76c21ba..87f571d 100644
--- a/assemblies/features/standard/pom.xml
+++ b/assemblies/features/standard/pom.xml
@@ -395,8 +395,26 @@
</dependencies>
<build>
+ <resources>
+ <resource>
+ <directory>${project.basedir}/src/main/feature</directory>
+ <filtering>true</filtering>
+ <targetPath>${project.build.directory}/feature</targetPath>
+ </resource>
+ </resources>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>resources</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<configuration>
@@ -404,16 +422,6 @@
</configuration>
<executions>
<execution>
- <id>compile</id>
- <phase>generate-resources</phase>
- <goals>
- <goal>features-generate-descriptor</goal>
- </goals>
- <configuration>
- <addBundlesToPrimaryFeature>false</addBundlesToPrimaryFeature>
- </configuration>
- </execution>
- <execution>
<id>verify</id>
<phase>process-resources</phase>
<goals>
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/static/pom.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/static/pom.xml b/assemblies/features/static/pom.xml
index c6c917a..ab233a8 100644
--- a/assemblies/features/static/pom.xml
+++ b/assemblies/features/static/pom.xml
@@ -64,6 +64,11 @@
<build>
<resources>
<resource>
+ <directory>${project.basedir}/src/main/feature</directory>
+ <filtering>true</filtering>
+ <targetPath>${project.build.directory}/feature</targetPath>
+ </resource>
+ <resource>
<directory>${project.basedir}/src/main/resources</directory>
<filtering>false</filtering>
<includes>
@@ -140,31 +145,8 @@
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<version>${project.version}</version>
- <configuration>
- <startLevel>30</startLevel>
- <!--<checkDependencyChange>true</checkDependencyChange>-->
- <!--<overwriteChangedDependencies>true</overwriteChangedDependencies>-->
- <!--<failOnDependencyChange>false</failOnDependencyChange>-->
- </configuration>
<executions>
<execution>
- <id>compile</id>
- <phase>compile</phase>
- <goals>
- <goal>features-generate-descriptor</goal>
- </goals>
- <configuration>
- <excludedArtifactIds>
- <excludedArtifactId>slf4j-api</excludedArtifactId>
- <excludedArtifactId>sshd-core</excludedArtifactId>
- <excludedArtifactId>jline</excludedArtifactId>
- <excludedArtifactId>core</excludedArtifactId>
- <excludedArtifactId>org.apache.karaf.region.core</excludedArtifactId>
- <excludedArtifactId>org.eclipse.equinox.region</excludedArtifactId>
- </excludedArtifactIds>
- </configuration>
- </execution>
- <execution>
<id>package</id>
<goals>
<goal>kar</goal>
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/static/src/main/feature/feature.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/static/src/main/feature/feature.xml b/assemblies/features/static/src/main/feature/feature.xml
new file mode 100644
index 0000000..8f191a5
--- /dev/null
+++ b/assemblies/features/static/src/main/feature/feature.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<features name="static-framework-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.1 http://karaf.apache.org/xmlns/features/v1.2.1">
+
+ <feature version="${project.version}" description="Karaf core feature" name="static-framework">
+ <!-- logging -->
+ <bundle start="true" start-level="8">mvn:org.ops4j.pax.logging/pax-logging-api/${pax.logging.version}</bundle>
+ <bundle start="true" start-level="8">mvn:org.ops4j.pax.logging/pax-logging-log4j2/${pax.logging.version}</bundle>
+ <!-- static config admin -->
+ <bundle start="true" start-level="10">mvn:org.apache.karaf.services/org.apache.karaf.services.staticcm/${project.version}</bundle>
+ </feature>
+
+</features>
http://git-wip-us.apache.org/repos/asf/karaf/blob/3065ace3/assemblies/features/static/src/main/feature/features.xml
----------------------------------------------------------------------
diff --git a/assemblies/features/static/src/main/feature/features.xml b/assemblies/features/static/src/main/feature/features.xml
deleted file mode 100644
index 8f191a5..0000000
--- a/assemblies/features/static/src/main/feature/features.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<features name="static-framework-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.1 http://karaf.apache.org/xmlns/features/v1.2.1">
-
- <feature version="${project.version}" description="Karaf core feature" name="static-framework">
- <!-- logging -->
- <bundle start="true" start-level="8">mvn:org.ops4j.pax.logging/pax-logging-api/${pax.logging.version}</bundle>
- <bundle start="true" start-level="8">mvn:org.ops4j.pax.logging/pax-logging-log4j2/${pax.logging.version}</bundle>
- <!-- static config admin -->
- <bundle start="true" start-level="10">mvn:org.apache.karaf.services/org.apache.karaf.services.staticcm/${project.version}</bundle>
- </feature>
-
-</features>
[2/3] karaf git commit: [KARAF-4801] Remove some requirements for the
verify goal
Posted by gn...@apache.org.
[KARAF-4801] Remove some requirements for the verify goal
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/597a2778
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/597a2778
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/597a2778
Branch: refs/heads/master
Commit: 597a2778e731d68c53d3206ca3e1b834e194a048
Parents: 3065ace
Author: Guillaume Nodet <gn...@apache.org>
Authored: Fri Oct 21 14:09:28 2016 +0200
Committer: Guillaume Nodet <gn...@apache.org>
Committed: Fri Oct 21 14:49:45 2016 +0200
----------------------------------------------------------------------
tooling/karaf-maven-plugin/pom.xml | 9 +++
.../apache/karaf/tooling/versions.properties | 1 +
.../org/apache/karaf/tooling/VerifyMojo.java | 74 +++++++++++++++++---
3 files changed, 74 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/597a2778/tooling/karaf-maven-plugin/pom.xml
----------------------------------------------------------------------
diff --git a/tooling/karaf-maven-plugin/pom.xml b/tooling/karaf-maven-plugin/pom.xml
index 1f8ed33..e0a0118 100644
--- a/tooling/karaf-maven-plugin/pom.xml
+++ b/tooling/karaf-maven-plugin/pom.xml
@@ -211,6 +211,15 @@
</dependencies>
<build>
+ <resources>
+ <resource>
+ <directory>${project.basedir}/src/main/resources</directory>
+ </resource>
+ <resource>
+ <directory>${project.basedir}/src/main/filtered-resources</directory>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
http://git-wip-us.apache.org/repos/asf/karaf/blob/597a2778/tooling/karaf-maven-plugin/src/main/filtered-resources/org/apache/karaf/tooling/versions.properties
----------------------------------------------------------------------
diff --git a/tooling/karaf-maven-plugin/src/main/filtered-resources/org/apache/karaf/tooling/versions.properties b/tooling/karaf-maven-plugin/src/main/filtered-resources/org/apache/karaf/tooling/versions.properties
new file mode 100644
index 0000000..fbeec5d
--- /dev/null
+++ b/tooling/karaf-maven-plugin/src/main/filtered-resources/org/apache/karaf/tooling/versions.properties
@@ -0,0 +1 @@
+karaf-version=${project.version}
http://git-wip-us.apache.org/repos/asf/karaf/blob/597a2778/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/VerifyMojo.java
----------------------------------------------------------------------
diff --git a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/VerifyMojo.java b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/VerifyMojo.java
index 29f215f..b6b1194 100644
--- a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/VerifyMojo.java
+++ b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/VerifyMojo.java
@@ -132,6 +132,9 @@ public class VerifyMojo extends MojoSupport {
@Parameter(property = "dist-dir")
protected String distDir;
+ @Parameter(property = "karaf-version")
+ protected String karafVersion;
+
@Parameter(property = "additional-metadata")
protected File additionalMetadata;
@@ -157,6 +160,17 @@ public class VerifyMojo extends MojoSupport {
if (skip) {
return;
}
+
+ if (karafVersion == null) {
+ Properties versions = new Properties();
+ try (InputStream is = getClass().getResourceAsStream("versions.properties")) {
+ versions.load(is);
+ } catch (IOException e) {
+ throw new IllegalStateException(e);
+ }
+ karafVersion = versions.getProperty("karaf-version");
+ }
+
Hashtable<String, String> config = new Hashtable<>();
StringBuilder remote = new StringBuilder();
for (Object obj : project.getRemoteProjectRepositories()) {
@@ -181,6 +195,22 @@ public class VerifyMojo extends MojoSupport {
doExecute();
}
+ private String getVersion(String id, String def) {
+ String v = getVersion(id);
+ return v != null ? v : def;
+ }
+
+ private String getVersion(String id) {
+ Artifact artifact = project.getArtifactMap().get(id);
+ if (artifact != null) {
+ return artifact.getBaseVersion();
+ } else if (id.startsWith("org.apache.karaf")) {
+ return karafVersion;
+ } else {
+ return null;
+ }
+ }
+
private Object invoke(Object object, String getter) throws MojoExecutionException {
try {
return object.getClass().getMethod(getter).invoke(object);
@@ -221,6 +251,21 @@ public class VerifyMojo extends MojoSupport {
}
}
+ if (descriptors == null) {
+ if (framework == null) {
+ framework = Collections.singleton("framework");
+ }
+ descriptors = new LinkedHashSet<>();
+ if (framework.contains("framework")) {
+ descriptors.add("mvn:org.apache.karaf.features/framework/" + getVersion("org.apache.karaf.features:framework") + "/xml/features");
+ }
+ descriptors.add("file:" + project.getBuild().getDirectory() + "/feature/feature.xml");
+ } else {
+ if (framework != null && framework.contains("framework")) {
+ descriptors.add("mvn:org.apache.karaf.features/framework/" + getVersion("org.apache.karaf.features:framework") + "/xml/features");
+ }
+ }
+
// TODO: allow using external configuration ?
ScheduledExecutorService executor = Executors.newScheduledThreadPool(8);
DownloadManager manager = new CustomDownloadManager(resolver, executor);
@@ -455,17 +500,26 @@ public class VerifyMojo extends MojoSupport {
configPropURL = new URL(configuration);
} else {
Artifact karafDistro = project.getArtifactMap().get(distribution);
- if (karafDistro == null) {
- throw new MojoFailureException("The karaf distribution " + distribution + " is not a dependency");
- }
- if ("kar".equals(karafDistro.getType()) && distDir == null) {
- distDir = "resources";
- }
- String dir = distDir;
- if (dir == null) {
- dir = karafDistro.getArtifactId() + "-" + karafDistro.getBaseVersion();
+ if (karafDistro != null) {
+ String dir = distDir;
+ if ("kar".equals(karafDistro.getType()) && dir == null) {
+ dir = "resources";
+ }
+ if (dir == null) {
+ dir = karafDistro.getArtifactId() + "-" + karafDistro.getBaseVersion();
+ }
+ configPropURL = new URL("jar:file:" + karafDistro.getFile() + "!/" + dir + "/etc/config.properties");
+ } else {
+ String version = getVersion(distribution, "RELEASE");
+ String[] dist = distribution.split(":");
+ File distFile = resolver.resolve(dist[0], dist[1], null, "zip", version);
+ String resolvedVersion = distFile.getName().substring(dist[1].length() + 1, distFile.getName().length() - 4);
+ String dir = distDir;
+ if (dir == null) {
+ dir = dist[1] + "-" + resolvedVersion;
+ }
+ configPropURL = new URL("jar:file:" + distFile + "!/" + dir + "/etc/config.properties");
}
- configPropURL = new URL("jar:file:" + karafDistro.getFile() + "!/" + dir + "/etc/config.properties");
}
org.apache.felix.utils.properties.Properties configProps = PropertiesLoader.loadPropertiesFile(configPropURL, true);
// copySystemProperties(configProps);
[3/3] karaf git commit: [KARAF-4787] Remove the generate goal and add
the verify goal from the feature packaging
Posted by gn...@apache.org.
[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 <gn...@apache.org>
Authored: Fri Oct 21 14:49:54 2016 +0200
Committer: Guillaume Nodet <gn...@apache.org>
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