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 2010/10/05 08:25:21 UTC
svn commit: r1004532 - in /karaf/trunk/archetypes:
command/src/main/resources/archetype-resources/pom.xml itests/pom.xml
itests/src/test/java/org/apache/karaf/archetypes/AbstractArchetypeTest.java
Author: gnodet
Date: Tue Oct 5 06:25:21 2010
New Revision: 1004532
URL: http://svn.apache.org/viewvc?rev=1004532&view=rev
Log:
Try to fix some integration tests problems with archetypes
Modified:
karaf/trunk/archetypes/command/src/main/resources/archetype-resources/pom.xml
karaf/trunk/archetypes/itests/pom.xml
karaf/trunk/archetypes/itests/src/test/java/org/apache/karaf/archetypes/AbstractArchetypeTest.java
Modified: karaf/trunk/archetypes/command/src/main/resources/archetype-resources/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/archetypes/command/src/main/resources/archetype-resources/pom.xml?rev=1004532&r1=1004531&r2=1004532&view=diff
==============================================================================
--- karaf/trunk/archetypes/command/src/main/resources/archetype-resources/pom.xml (original)
+++ karaf/trunk/archetypes/command/src/main/resources/archetype-resources/pom.xml Tue Oct 5 06:25:21 2010
@@ -1,92 +1,93 @@
-##---------------------------------------------------------------------------
-## 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.
-##---------------------------------------------------------------------------
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>${groupId}</groupId>
- <artifactId>${artifactId}</artifactId>
- <packaging>bundle</packaging>
- <version>${version}</version>
- <name>Apache Karaf :: Shell ${scope} Commands</name>
-
- <description>Provides the OSGi ${scope} commands</description>
-
- <properties>
- <junit.version>4.7_1</junit.version>
- <felix.osgi.version>1.4.0</felix.osgi.version>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.karaf.shell</groupId>
- <artifactId>org.apache.karaf.shell.console</artifactId>
- <version>2.1.99-SNAPSHOT</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.core</artifactId>
- <version>${felix.osgi.version}</version>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.osgi.compendium</artifactId>
- <version>${felix.osgi.version}</version>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.apache.servicemix.bundles</groupId>
- <artifactId>org.apache.servicemix.bundles.junit</artifactId>
- <version>${junit.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <inherited>true</inherited>
- <configuration>
- <source>1.5</source>
- <target>1.5</target>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
- <configuration>
- <instructions>
- <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
- <Export-Package>${package}*;version=${project.version}</Export-Package>
- <Import-Package>!${project.artifactId}*,
- org.apache.felix.service.command,
- org.apache.felix.gogo.commands,
- org.apache.karaf.shell.console,
- *
- </Import-Package>
- <Private-Package>!*</Private-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
+##---------------------------------------------------------------------------
+## 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.
+##---------------------------------------------------------------------------
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>${groupId}</groupId>
+ <artifactId>${artifactId}</artifactId>
+ <packaging>bundle</packaging>
+ <version>${version}</version>
+ <name>Apache Karaf :: Shell ${scope} Commands</name>
+
+ <description>Provides the OSGi ${scope} commands</description>
+
+ <properties>
+ <junit.version>4.7_1</junit.version>
+ <felix.osgi.version>1.4.0</felix.osgi.version>
+ </properties>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.karaf.shell</groupId>
+ <artifactId>org.apache.karaf.shell.console</artifactId>
+ <version>2.1.99-SNAPSHOT</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.core</artifactId>
+ <version>${felix.osgi.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>org.osgi.compendium</artifactId>
+ <version>${felix.osgi.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.servicemix.bundles</groupId>
+ <artifactId>org.apache.servicemix.bundles.junit</artifactId>
+ <version>${junit.version}</version>
+ <scope>test</scope>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <inherited>true</inherited>
+ <configuration>
+ <source>1.5</source>
+ <target>1.5</target>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <version>2.1.0</version>
+ <extensions>true</extensions>
+ <configuration>
+ <instructions>
+ <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
+ <Export-Package>${package}*;version=${project.version}</Export-Package>
+ <Import-Package>!${project.artifactId}*,
+ org.apache.felix.service.command,
+ org.apache.felix.gogo.commands,
+ org.apache.karaf.shell.console,
+ *
+ </Import-Package>
+ <Private-Package>!*</Private-Package>
+ </instructions>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+</project>
Modified: karaf/trunk/archetypes/itests/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/archetypes/itests/pom.xml?rev=1004532&r1=1004531&r2=1004532&view=diff
==============================================================================
--- karaf/trunk/archetypes/itests/pom.xml (original)
+++ karaf/trunk/archetypes/itests/pom.xml Tue Oct 5 06:25:21 2010
@@ -60,14 +60,29 @@
<artifactId>maven-core</artifactId>
<version>2.0.9</version>
</dependency>
+
+ <dependency>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-archetype-plugin</artifactId>
+ <version>2.0-alpha-5</version>
+ </dependency>
</dependencies>
<build>
<plugins>
+ <!-- generate dependencies versions -->
<plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-archetype-plugin</artifactId>
- <version>2.0-alpha-5</version>
+ <groupId>org.apache.servicemix.tooling</groupId>
+ <artifactId>depends-maven-plugin</artifactId>
+ <version>1.1</version>
+ <executions>
+ <execution>
+ <id>generate-depends-file</id>
+ <goals>
+ <goal>generate-depends-file</goal>
+ </goals>
+ </execution>
+ </executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
Modified: karaf/trunk/archetypes/itests/src/test/java/org/apache/karaf/archetypes/AbstractArchetypeTest.java
URL: http://svn.apache.org/viewvc/karaf/trunk/archetypes/itests/src/test/java/org/apache/karaf/archetypes/AbstractArchetypeTest.java?rev=1004532&r1=1004531&r2=1004532&view=diff
==============================================================================
--- karaf/trunk/archetypes/itests/src/test/java/org/apache/karaf/archetypes/AbstractArchetypeTest.java (original)
+++ karaf/trunk/archetypes/itests/src/test/java/org/apache/karaf/archetypes/AbstractArchetypeTest.java Tue Oct 5 06:25:21 2010
@@ -17,7 +17,9 @@
package org.apache.karaf.archetypes;
import java.io.File;
+import java.io.FileInputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.lang.reflect.Field;
import java.net.URL;
import java.util.Collections;
@@ -114,7 +116,7 @@ public abstract class AbstractArchetypeT
System.setProperties((Properties) sysProps.clone());
maven.execute(parent,
- Collections.singletonList("archetype:generate"),
+ Collections.singletonList(getArchetypeGenerateGoal()),
eventMonitor,
new ConsoleDownloadMonitor(),
props,
@@ -133,6 +135,34 @@ public abstract class AbstractArchetypeT
targetDir);
}
+ private String getArchetypeGenerateGoal() {
+ String groupId = "org.apache.maven.plugins";
+ String artifactId = "maven-archetype-plugin";
+ String version = getVersion(groupId, artifactId);
+ return groupId + ":" + artifactId + (version != null ? ":" + version : "") + ":generate";
+ }
+
+ private String getVersion(String groupId, String artifactId) {
+ try {
+ File file = new File("META-INF/maven/dependencies.properties");
+ if (!file.exists()) {
+ file = new File("target/classes/META-INF/maven/dependencies.properties");
+ }
+ if (file.exists()) {
+ Properties dependencies = new Properties();
+ InputStream is = new FileInputStream(file);
+ try {
+ dependencies.load(is);
+ } finally {
+ is.close();
+ }
+ return dependencies.getProperty( groupId + "/" + artifactId + "/version" );
+ }
+ } catch (Throwable t2) {
+ }
+ return null;
+ }
+
private File getDefaultArchetypePom(File pomFile) throws IOException {
URL archetypePom = getClass().getClassLoader().getResource("archetype-pom.xml");
FileUtils.copyURLToFile(archetypePom, pomFile);