Author: bentmann
Date: Mon Jul 12 10:48:09 2010
New Revision: 963239

URL: http://svn.apache.org/viewvc?rev=963239&view=rev
Log:
o Added profile to test already installed/deployed Maven distro

Modified:
    maven/core-integration-testing/trunk/core-it-suite/pom.xml

Modified: maven/core-integration-testing/trunk/core-it-suite/pom.xml
URL: 
http://svn.apache.org/viewvc/maven/core-integration-testing/trunk/core-it-suite/pom.xml?rev=963239&r1=963238&r2=963239&view=diff
==============================================================================
--- maven/core-integration-testing/trunk/core-it-suite/pom.xml (original)
+++ maven/core-integration-testing/trunk/core-it-suite/pom.xml Mon Jul 12 
10:48:09 2010
@@ -34,16 +34,21 @@ under the License.
 
   <!--
   By default, the project just packages the tests in an artifact. To actually 
run them, activate the profile "run-its":
+  
     mvn clean test -Prun-its
   
   This will subject the Maven version running the build to the integration 
tests. If you would like to test a different
   Maven distribution, you can use the system property "mavenHome" to specify 
the path of the Maven distribution to test:
+  
     mvn clean test -Prun-its -DmavenHome=<maven-under-test>
   
-  To run the ITs using embedded Maven 3.x, add -D verifier.forkMode=auto. This 
will require more memory, something like
-    MAVEN_OPTS=-Xmx256m -XX:MaxPermSize=128m
-  seems to work.
-
+  Alternatively, you can just specify the version of a previously 
installed/deployed Maven distribution which will be
+  downloaded, unpacked and tested:
+  
+    mvn clean test -Prun-its -DmavenVersion=2.2.1
+  
+  To run the ITs using embedded Maven 3.x, additionally activate the profile 
"embedded".
+  
   ITs that don't require to fork Maven can also be run from the IDE using the 
Maven projects from the workspace if the
   Maven dependencies are added to the test class path.
   -->
@@ -224,6 +229,77 @@ under the License.
       </build>
     </profile>
     <profile>
+      <id>maven-distro</id>
+      <activation>
+        <property>
+          <name>mavenVersion</name>
+        </property>
+      </activation>
+      <properties>
+        <mavenHome>${project.build.directory}/apache-maven</mavenHome>
+      </properties>
+      <build>
+        <plugins>
+          <plugin>
+            <artifactId>maven-surefire-plugin</artifactId>
+            <configuration>
+              <skip>false</skip>
+            </configuration>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-dependency-plugin</artifactId>
+            <version>2.0</version>
+            <executions>
+              <execution>
+                <id>download-maven-distro</id>
+                <phase>process-test-resources</phase>
+                <goals>
+                  <goal>copy</goal>
+                </goals>
+                <configuration>
+                  <artifactItems>
+                    <artifactItem>
+                      <groupId>org.apache.maven</groupId>
+                      <artifactId>apache-maven</artifactId>
+                      <version>${mavenVersion}</version>
+                      <classifier>bin</classifier>
+                      <type>zip</type>
+                      <destFileName>maven-bin.zip</destFileName>
+                    </artifactItem>
+                  </artifactItems>
+                  <outputDirectory>${project.build.directory}</outputDirectory>
+                </configuration>
+              </execution>
+            </executions>
+          </plugin>
+          <plugin>
+            <groupId>org.apache.maven.plugins</groupId>
+            <artifactId>maven-antrun-plugin</artifactId>
+            <version>1.3</version>
+            <executions>
+              <execution>
+                <id>unpack-maven-distro</id>
+                <phase>process-test-resources</phase>
+                <goals>
+                  <goal>run</goal>
+                </goals>
+                <configuration>
+                  <tasks>
+                    <delete dir="${mavenHome}"/>
+                    <unzip src="${project.build.directory}/maven-bin.zip" 
dest="${mavenHome}">
+                      <globmapper from="apache-maven-${mavenVersion}/*" to="*" 
handledirsep="true" />
+                    </unzip>
+                    <chmod dir="${mavenHome}/bin" perm="ugo+rx" 
includes="mvn,mvnDebug"/>
+                  </tasks>
+                </configuration>
+              </execution>
+            </executions>
+          </plugin>
+        </plugins>
+      </build>
+    </profile>
+    <profile>
       <id>emma</id>
       <properties>
         
<preparedMavenHome>${project.build.directory}/distro</preparedMavenHome>


Reply via email to