You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2014/01/09 00:01:32 UTC
[1/2] git commit: Added IT for MNG-5230 exclude projects from reactor
Updated Branches:
refs/heads/master c01884d6d -> 71cd6c8d0
Added IT for MNG-5230 exclude projects from reactor
Project: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/commit/f9da3d33
Tree: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/tree/f9da3d33
Diff: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/diff/f9da3d33
Branch: refs/heads/master
Commit: f9da3d33056700956e4e16defb417bd6eda0937e
Parents: c01884d
Author: Luuk van den Broek <lu...@gmail.com>
Authored: Tue Dec 24 16:27:09 2013 +0900
Committer: Robert Scholte <rf...@codehaus.org>
Committed: Mon Jan 6 23:27:02 2014 +0100
----------------------------------------------------------------------
.../apache/maven/it/IntegrationTestSuite.java | 3 +-
...venITmng5230MakeReactorWithExcludesTest.java | 259 +++++++++++++++++++
.../src/test/resources/mng-5230/pom.xml | 61 +++++
.../src/test/resources/mng-5230/sub-a/pom.xml | 37 +++
.../src/test/resources/mng-5230/sub-b/pom.xml | 45 ++++
.../src/test/resources/mng-5230/sub-c/pom.xml | 45 ++++
.../resources/mng-5230/sub-d/pom-special.xml | 37 +++
7 files changed, 486 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java b/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
index 29e6bcf..af986f5 100644
--- a/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
+++ b/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
@@ -109,13 +109,14 @@ public class IntegrationTestSuite
suite.addTestSuite( MavenITmng5530MojoExecutionScopeTest.class );
//suite.addTestSuite( MavenITmng5208EventSpyParallelTest.class );
-
+
suite.addTestSuite( MavenITmng5482AetherNotFoundTest.class );
suite.addTestSuite( MavenITmng5445LegacyStringSearchModelInterpolatorTest.class );
suite.addTestSuite( MavenITmng5387ArtifactReplacementPlugin.class );
suite.addTestSuite( MavenITmng5382Jsr330Plugin.class );
suite.addTestSuite( MavenITmng5338FileOptionToDirectory.class );
suite.addTestSuite( MavenITmng5280SettingsProfilesRepositoriesOrderTest.class );
+ suite.addTestSuite( MavenITmng5230MakeReactorWithExcludesTest.class );
suite.addTestSuite( MavenITmng5224InjectedSettings.class );
suite.addTestSuite( MavenITmng5214DontMapWsdlToJar.class );
suite.addTestSuite( MavenITmng5137ReactorResolutionInForkedBuildTest.class );
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
new file mode 100644
index 0000000..5c7692f
--- /dev/null
+++ b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
@@ -0,0 +1,259 @@
+package org.apache.maven.it;
+
+/*
+ * 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.
+ */
+
+import org.apache.maven.it.Verifier;
+import org.apache.maven.it.util.ResourceExtractor;
+
+import java.io.File;
+
+/**
+ * Test case adapted from MNG-2576
+ * @author Luuk van den Broek
+ */
+public class MavenITmng5230MakeReactorWithExcludesTest
+ extends AbstractMavenIntegrationTestCase
+{
+
+ public MavenITmng5230MakeReactorWithExcludesTest()
+ {
+ super( "[2.1.0,)" );
+ }
+
+ private void clean( Verifier verifier )
+ throws Exception
+ {
+ verifier.deleteDirectory( "target" );
+ verifier.deleteDirectory( "sub-a/target" );
+ verifier.deleteDirectory( "sub-b/target" );
+ verifier.deleteDirectory( "sub-c/target" );
+ verifier.deleteDirectory( "sub-d/target" );
+ }
+
+ /**
+ * Verify that project list exclusion by itself is not built
+ */
+ public void testitMakeWithExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "!sub-b" );
+ verifier.setLogFileName( "log-only.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFilePresent( "sub-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
+ verifier.assertFilePresent( "sub-c/target/touch.txt" );
+ verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify that that exclusion happens on upstream projects.
+ */
+ public void testitMakeUpstreamExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "sub-b,!sub-a" );
+ verifier.addCliOption( "-am" );
+ verifier.setLogFileName( "log-upstream.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
+ verifier.assertFilePresent( "sub-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify that project list and all their downstream projects are built.
+ */
+ public void testitMakeDownstreamExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "sub-b,!sub-c" );
+ verifier.addCliOption( "-amd" );
+ verifier.setLogFileName( "log-downstream.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFileNotPresent( "target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
+ verifier.assertFilePresent( "sub-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify project exclusion when also building upstream and downstream projects are built.
+ */
+ public void testitMakeBothExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "sub-b,!sub-a" );
+ verifier.addCliOption( "-am" );
+ verifier.addCliOption( "-amd" );
+ verifier.setLogFileName( "log-both.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
+ verifier.assertFilePresent( "sub-b/target/touch.txt" );
+ verifier.assertFilePresent( "sub-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify that using the basedir for exclusion in the project list matches projects with non-default POM files.
+ */
+ public void testitMatchesByBasedirExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.assertFileNotPresent( "sub-d/pom.xml" );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "!sub-d" );
+ verifier.setLogFileName( "log-basedir.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFilePresent( "sub-a/target/touch.txt" );
+ verifier.assertFilePresent( "sub-b/target/touch.txt" );
+ verifier.assertFilePresent( "sub-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify that the project list can also specify project ids for exclusion
+ */
+ public void testitMatchesByIdExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "!org.apache.maven.its.mng5230:sub-b" );
+ verifier.setLogFileName( "log-id.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFilePresent( "sub-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
+ verifier.assertFilePresent( "sub-c/target/touch.txt" );
+ verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify that the project list exclude can also specify aritfact ids.
+ */
+ public void testitMatchesByArtifactIdExclude()
+ throws Exception
+ {
+ // as per MNG-4244
+ requiresMavenVersion( "[3.0-alpha-3,)" );
+
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "!:sub-b" );
+ verifier.setLogFileName( "log-artifact-id.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFilePresent( "sub-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
+ verifier.assertFilePresent( "sub-c/target/touch.txt" );
+ verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ }
+
+ /**
+ * Verify that reactor is resumed from specified project with exclude
+ */
+ public void testitResumeFromExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.addCliOption( "-rf" );
+ verifier.addCliOption( "sub-b" );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "!sub-c" );
+ verifier.setLogFileName( "log-resume.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFileNotPresent( "target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
+ verifier.assertFilePresent( "sub-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
+ verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/resources/mng-5230/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/pom.xml b/core-it-suite/src/test/resources/mng-5230/pom.xml
new file mode 100644
index 0000000..260ba55
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230/pom.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <name>Maven Integration Test :: MNG-5230</name>
+ <description>Test make-like reactor mode includes and excludes.</description>
+
+ <modules>
+ <module>sub-a</module>
+ <module>sub-b</module>
+ <module>sub-c</module>
+ <module>sub-d/pom-special.xml</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.its.plugins</groupId>
+ <artifactId>maven-it-plugin-log-file</artifactId>
+ <version>2.1-SNAPSHOT</version>
+ <configuration>
+ <logFile>target/touch.txt</logFile>
+ </configuration>
+ <executions>
+ <execution>
+ <id>test</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>reset</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml b/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml
new file mode 100644
index 0000000..ece502c
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>sub-a</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project A</name>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml b/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml
new file mode 100644
index 0000000..76b9b9c
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>sub-b</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project B</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>sub-a</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml b/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml
new file mode 100644
index 0000000..d54ff1f
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>sub-c</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project C</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>sub-b</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/f9da3d33/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml b/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml
new file mode 100644
index 0000000..e95b211
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>sub-d</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project D</name>
+</project>
[2/2] git commit: [MNG-5230] Command line option to exclude modules
from reactor Patch contributed by Luuk van den Broek,
slightly adjusted by Robert Scholte '-pl -sub-a' is parsed as '-pl -s ub-a' by
commons-cli-1.2, so renamed them to mod-x.
Posted by rf...@apache.org.
[MNG-5230] Command line option to exclude modules from reactor
Patch contributed by Luuk van den Broek, slightly adjusted by Robert Scholte
'-pl -sub-a' is parsed as '-pl -s ub-a' by commons-cli-1.2, so renamed them to mod-x.
Project: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/repo
Commit: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/commit/71cd6c8d
Tree: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/tree/71cd6c8d
Diff: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/diff/71cd6c8d
Branch: refs/heads/master
Commit: 71cd6c8d0b6ee4cab21f38330367d552ed9defcd
Parents: f9da3d3
Author: Robert Scholte <rf...@codehaus.org>
Authored: Thu Jan 9 00:00:52 2014 +0100
Committer: Robert Scholte <rf...@codehaus.org>
Committed: Thu Jan 9 00:00:52 2014 +0100
----------------------------------------------------------------------
.../it/MavenITmng2576MakeLikeReactorTest.java | 28 ++++
...venITmng5230MakeReactorWithExcludesTest.java | 151 +++++++++++--------
.../mod-a/pom.xml | 37 +++++
.../mod-b/pom.xml | 45 ++++++
.../mod-c/pom.xml | 45 ++++++
.../mod-d/pom-special.xml | 37 +++++
.../mng-5230-make-reactor-with-excludes/pom.xml | 61 ++++++++
.../src/test/resources/mng-5230/pom.xml | 61 --------
.../src/test/resources/mng-5230/sub-a/pom.xml | 37 -----
.../src/test/resources/mng-5230/sub-b/pom.xml | 45 ------
.../src/test/resources/mng-5230/sub-c/pom.xml | 45 ------
.../resources/mng-5230/sub-d/pom-special.xml | 37 -----
12 files changed, 341 insertions(+), 288 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2576MakeLikeReactorTest.java
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2576MakeLikeReactorTest.java b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2576MakeLikeReactorTest.java
index 48dce1c..1310234 100644
--- a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2576MakeLikeReactorTest.java
+++ b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng2576MakeLikeReactorTest.java
@@ -179,6 +179,34 @@ public class MavenITmng2576MakeLikeReactorTest
}
/**
+ * Verify that using the mere basedir in the project list properly matches projects with non-default POM files.
+ */
+ public void testitMatchesByBasedirPlus()
+ throws Exception
+ {
+ // as per MNG-5230
+ requiresMavenVersion( "[3.2,)" );
+
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-2576" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.assertFileNotPresent( "sub-d/pom.xml" );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "+sub-d" );
+ verifier.setLogFileName( "log-basedir-plus.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFileNotPresent( "target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
+ verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ }
+ /**
* Verify that the project list can also specify project ids.
*/
public void testitMatchesById()
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
index 5c7692f..a4843f7 100644
--- a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
+++ b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5230MakeReactorWithExcludesTest.java
@@ -34,17 +34,17 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public MavenITmng5230MakeReactorWithExcludesTest()
{
- super( "[2.1.0,)" );
+ super( "[3.2,)" );
}
private void clean( Verifier verifier )
throws Exception
{
verifier.deleteDirectory( "target" );
- verifier.deleteDirectory( "sub-a/target" );
- verifier.deleteDirectory( "sub-b/target" );
- verifier.deleteDirectory( "sub-c/target" );
- verifier.deleteDirectory( "sub-d/target" );
+ verifier.deleteDirectory( "mod-a/target" );
+ verifier.deleteDirectory( "mod-b/target" );
+ verifier.deleteDirectory( "mod-c/target" );
+ verifier.deleteDirectory( "mod-d/target" );
}
/**
@@ -53,23 +53,24 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public void testitMakeWithExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
- Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ Verifier verifier = newVerifier( testDir.getAbsolutePath(), true );
+ verifier.setMavenDebug( true );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "!sub-b" );
+ verifier.addCliOption( "!mod-b" );
verifier.setLogFileName( "log-only.txt" );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
verifier.assertFilePresent( "target/touch.txt" );
- verifier.assertFilePresent( "sub-a/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
- verifier.assertFilePresent( "sub-c/target/touch.txt" );
- verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ verifier.assertFilePresent( "mod-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-b/target/touch.txt" );
+ verifier.assertFilePresent( "mod-c/target/touch.txt" );
+ verifier.assertFilePresent( "mod-d/target/touch.txt" );
}
/**
@@ -78,13 +79,13 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public void testitMakeUpstreamExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "sub-b,!sub-a" );
+ verifier.addCliOption( "mod-b,!mod-a" );
verifier.addCliOption( "-am" );
verifier.setLogFileName( "log-upstream.txt" );
verifier.executeGoal( "validate" );
@@ -92,10 +93,10 @@ public class MavenITmng5230MakeReactorWithExcludesTest
verifier.resetStreams();
verifier.assertFilePresent( "target/touch.txt" );
- verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
- verifier.assertFilePresent( "sub-b/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-a/target/touch.txt" );
+ verifier.assertFilePresent( "mod-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-d/target/touch.txt" );
}
/**
@@ -104,13 +105,13 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public void testitMakeDownstreamExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "sub-b,!sub-c" );
+ verifier.addCliOption( "mod-b,!mod-c" );
verifier.addCliOption( "-amd" );
verifier.setLogFileName( "log-downstream.txt" );
verifier.executeGoal( "validate" );
@@ -118,10 +119,10 @@ public class MavenITmng5230MakeReactorWithExcludesTest
verifier.resetStreams();
verifier.assertFileNotPresent( "target/touch.txt" );
- verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
- verifier.assertFilePresent( "sub-b/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-a/target/touch.txt" );
+ verifier.assertFilePresent( "mod-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-d/target/touch.txt" );
}
/**
@@ -130,13 +131,13 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public void testitMakeBothExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "sub-b,!sub-a" );
+ verifier.addCliOption( "mod-b,!mod-a" );
verifier.addCliOption( "-am" );
verifier.addCliOption( "-amd" );
verifier.setLogFileName( "log-both.txt" );
@@ -145,61 +146,88 @@ public class MavenITmng5230MakeReactorWithExcludesTest
verifier.resetStreams();
verifier.assertFilePresent( "target/touch.txt" );
- verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
- verifier.assertFilePresent( "sub-b/target/touch.txt" );
- verifier.assertFilePresent( "sub-c/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-a/target/touch.txt" );
+ verifier.assertFilePresent( "mod-b/target/touch.txt" );
+ verifier.assertFilePresent( "mod-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-d/target/touch.txt" );
}
/**
- * Verify that using the basedir for exclusion in the project list matches projects with non-default POM files.
+ * Verify that using the basedir for exclusion with an exclemation in the project list matches projects with non-default POM files.
*/
- public void testitMatchesByBasedirExclude()
+ public void testitMatchesByBasedirExclamationExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
- verifier.assertFileNotPresent( "sub-d/pom.xml" );
+ verifier.assertFileNotPresent( "mod-d/pom.xml" );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "!sub-d" );
- verifier.setLogFileName( "log-basedir.txt" );
+ verifier.addCliOption( "!mod-d" );
+ verifier.setLogFileName( "log-basedir-exclamation.txt" );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
verifier.assertFilePresent( "target/touch.txt" );
- verifier.assertFilePresent( "sub-a/target/touch.txt" );
- verifier.assertFilePresent( "sub-b/target/touch.txt" );
- verifier.assertFilePresent( "sub-c/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-d/target/touch.txt" );
+ verifier.assertFilePresent( "mod-a/target/touch.txt" );
+ verifier.assertFilePresent( "mod-b/target/touch.txt" );
+ verifier.assertFilePresent( "mod-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-d/target/touch.txt" );
}
/**
+ * Verify that using the basedir for exclusion with a minus in the project list matches projects with non-default POM files.
+ */
+ public void testitMatchesByBasedirMinusExclude()
+ throws Exception
+ {
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
+
+ Verifier verifier = newVerifier( testDir.getAbsolutePath() );
+ verifier.setAutoclean( false );
+ clean( verifier );
+ verifier.assertFileNotPresent( "mod-d/pom.xml" );
+ verifier.addCliOption( "-pl" );
+ verifier.addCliOption( "-mod-d" );
+ verifier.setLogFileName( "log-basedir-minus.txt" );
+ verifier.executeGoal( "validate" );
+ verifier.verifyErrorFreeLog();
+ verifier.resetStreams();
+
+ verifier.assertFilePresent( "target/touch.txt" );
+ verifier.assertFilePresent( "mod-a/target/touch.txt" );
+ verifier.assertFilePresent( "mod-b/target/touch.txt" );
+ verifier.assertFilePresent( "mod-c/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-d/target/touch.txt" );
+ }
+
+
+ /**
* Verify that the project list can also specify project ids for exclusion
*/
public void testitMatchesByIdExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "!org.apache.maven.its.mng5230:sub-b" );
+ verifier.addCliOption( "!org.apache.maven.its.mng5230:mod-b" );
verifier.setLogFileName( "log-id.txt" );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
verifier.assertFilePresent( "target/touch.txt" );
- verifier.assertFilePresent( "sub-a/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
- verifier.assertFilePresent( "sub-c/target/touch.txt" );
- verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ verifier.assertFilePresent( "mod-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-b/target/touch.txt" );
+ verifier.assertFilePresent( "mod-c/target/touch.txt" );
+ verifier.assertFilePresent( "mod-d/target/touch.txt" );
}
/**
@@ -208,26 +236,23 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public void testitMatchesByArtifactIdExclude()
throws Exception
{
- // as per MNG-4244
- requiresMavenVersion( "[3.0-alpha-3,)" );
-
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "!:sub-b" );
+ verifier.addCliOption( "!:mod-b" );
verifier.setLogFileName( "log-artifact-id.txt" );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
verifier.assertFilePresent( "target/touch.txt" );
- verifier.assertFilePresent( "sub-a/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-b/target/touch.txt" );
- verifier.assertFilePresent( "sub-c/target/touch.txt" );
- verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ verifier.assertFilePresent( "mod-a/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-b/target/touch.txt" );
+ verifier.assertFilePresent( "mod-c/target/touch.txt" );
+ verifier.assertFilePresent( "mod-d/target/touch.txt" );
}
/**
@@ -236,24 +261,24 @@ public class MavenITmng5230MakeReactorWithExcludesTest
public void testitResumeFromExclude()
throws Exception
{
- File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230" );
+ File testDir = ResourceExtractor.simpleExtractResources( getClass(), "/mng-5230-make-reactor-with-excludes" );
Verifier verifier = newVerifier( testDir.getAbsolutePath() );
verifier.setAutoclean( false );
clean( verifier );
verifier.addCliOption( "-rf" );
- verifier.addCliOption( "sub-b" );
+ verifier.addCliOption( "mod-b" );
verifier.addCliOption( "-pl" );
- verifier.addCliOption( "!sub-c" );
+ verifier.addCliOption( "!mod-c" );
verifier.setLogFileName( "log-resume.txt" );
verifier.executeGoal( "validate" );
verifier.verifyErrorFreeLog();
verifier.resetStreams();
verifier.assertFileNotPresent( "target/touch.txt" );
- verifier.assertFileNotPresent( "sub-a/target/touch.txt" );
- verifier.assertFilePresent( "sub-b/target/touch.txt" );
- verifier.assertFileNotPresent( "sub-c/target/touch.txt" );
- verifier.assertFilePresent( "sub-d/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-a/target/touch.txt" );
+ verifier.assertFilePresent( "mod-b/target/touch.txt" );
+ verifier.assertFileNotPresent( "mod-c/target/touch.txt" );
+ verifier.assertFilePresent( "mod-d/target/touch.txt" );
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-a/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-a/pom.xml b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-a/pom.xml
new file mode 100644
index 0000000..5b825ac
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-a/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>mod-a</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project A</name>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-b/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-b/pom.xml b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-b/pom.xml
new file mode 100644
index 0000000..09323b5
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-b/pom.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>mod-b</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project B</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>mod-a</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-c/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-c/pom.xml b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-c/pom.xml
new file mode 100644
index 0000000..1cf1c9f
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-c/pom.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>mod-c</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project C</name>
+
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>mod-b</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+ </dependencies>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-d/pom-special.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-d/pom-special.xml b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-d/pom-special.xml
new file mode 100644
index 0000000..7baacbc
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/mod-d/pom-special.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </parent>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>mod-d</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>jar</packaging>
+
+ <name>Maven Integration Test :: MNG-5230 :: Project D</name>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/pom.xml b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/pom.xml
new file mode 100644
index 0000000..f76a536
--- /dev/null
+++ b/core-it-suite/src/test/resources/mng-5230-make-reactor-with-excludes/pom.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+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.
+-->
+
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.apache.maven.its.mng5230</groupId>
+ <artifactId>parent</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <name>Maven Integration Test :: MNG-5230</name>
+ <description>Test make-like reactor mode includes and excludes.</description>
+
+ <modules>
+ <module>mod-a</module>
+ <module>mod-b</module>
+ <module>mod-c</module>
+ <module>mod-d/pom-special.xml</module>
+ </modules>
+
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.its.plugins</groupId>
+ <artifactId>maven-it-plugin-log-file</artifactId>
+ <version>2.1-SNAPSHOT</version>
+ <configuration>
+ <logFile>target/touch.txt</logFile>
+ </configuration>
+ <executions>
+ <execution>
+ <id>test</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>reset</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/pom.xml b/core-it-suite/src/test/resources/mng-5230/pom.xml
deleted file mode 100644
index 260ba55..0000000
--- a/core-it-suite/src/test/resources/mng-5230/pom.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-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.
--->
-
-<project>
- <modelVersion>4.0.0</modelVersion>
-
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>parent</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>pom</packaging>
-
- <name>Maven Integration Test :: MNG-5230</name>
- <description>Test make-like reactor mode includes and excludes.</description>
-
- <modules>
- <module>sub-a</module>
- <module>sub-b</module>
- <module>sub-c</module>
- <module>sub-d/pom-special.xml</module>
- </modules>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.its.plugins</groupId>
- <artifactId>maven-it-plugin-log-file</artifactId>
- <version>2.1-SNAPSHOT</version>
- <configuration>
- <logFile>target/touch.txt</logFile>
- </configuration>
- <executions>
- <execution>
- <id>test</id>
- <phase>validate</phase>
- <goals>
- <goal>reset</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml b/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml
deleted file mode 100644
index ece502c..0000000
--- a/core-it-suite/src/test/resources/mng-5230/sub-a/pom.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-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.
--->
-
-<project>
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>parent</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>sub-a</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>jar</packaging>
-
- <name>Maven Integration Test :: MNG-5230 :: Project A</name>
-</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml b/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml
deleted file mode 100644
index 76b9b9c..0000000
--- a/core-it-suite/src/test/resources/mng-5230/sub-b/pom.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-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.
--->
-
-<project>
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>parent</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>sub-b</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>jar</packaging>
-
- <name>Maven Integration Test :: MNG-5230 :: Project B</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>sub-a</artifactId>
- <version>1.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml b/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml
deleted file mode 100644
index d54ff1f..0000000
--- a/core-it-suite/src/test/resources/mng-5230/sub-c/pom.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-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.
--->
-
-<project>
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>parent</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>sub-c</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>jar</packaging>
-
- <name>Maven Integration Test :: MNG-5230 :: Project C</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>sub-b</artifactId>
- <version>1.0-SNAPSHOT</version>
- </dependency>
- </dependencies>
-</project>
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/71cd6c8d/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml
----------------------------------------------------------------------
diff --git a/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml b/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml
deleted file mode 100644
index e95b211..0000000
--- a/core-it-suite/src/test/resources/mng-5230/sub-d/pom-special.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-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.
--->
-
-<project>
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>parent</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <groupId>org.apache.maven.its.mng5230</groupId>
- <artifactId>sub-d</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>jar</packaging>
-
- <name>Maven Integration Test :: MNG-5230 :: Project D</name>
-</project>