maven-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bentm...@apache.org
Subject svn commit: r697096 - in /maven/plugins/trunk/maven-invoker-plugin/src: it/local-repo-path/ it/local-repo-path/src/ it/local-repo-path/src/it/ it/local-repo-path/src/it/project/ it/local-repo-url/ it/local-repo-url/src/ it/local-repo-url/src/it/ it/loc...
Date Fri, 19 Sep 2008 13:48:46 GMT
Author: bentmann
Date: Fri Sep 19 06:48:46 2008
New Revision: 697096

URL: http://svn.apache.org/viewvc?rev=697096&view=rev
Log:
[MINVOKER-65] Support token "localRepositoryUrl" for filtering settings.xml

Added:
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml   (with props)
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml
  (with props)
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml  
(with props)
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml   (with props)
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml
  (with props)
    maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml   (with
props)
Modified:
    maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java
    maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/fast-use.apt.vm
    maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/filtering.apt.vm

Added: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml?rev=697096&view=auto
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml (added)
+++ maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml Fri Sep 19 06:48:46
2008
@@ -0,0 +1,72 @@
+<?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 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>org.apache.maven.plugins.invoker</groupId>
+  <artifactId>local-repo-path</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <description>
+    Test to check for proper filtering of "localRepository" token.
+  </description>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <!-- This triggers the download of a known version of this plugin which can then
be safely invoked by the IT project -->
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <version>2.2</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-invoker-plugin</artifactId>
+        <version>@pom.version@</version>
+        <configuration>
+          <localRepositoryPath>${project.build.directory}/it-repo</localRepositoryPath>
+          <pomIncludes>
+            <pomInclude>*/pom.xml</pomInclude>
+          </pomIncludes>
+          <settingsFile>src/it/settings.xml</settingsFile>
+          <goals>
+            <goal>org.apache.maven.plugins:maven-resources-plugin:2.2:resources</goal>
+          </goals>
+        </configuration>
+        <executions>
+          <execution>
+            <id>integration-test</id>
+            <goals>
+              <goal>run</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml?rev=697096&view=auto
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml
(added)
+++ maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml
Fri Sep 19 06:48:46 2008
@@ -0,0 +1,32 @@
+<?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 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>test</groupId>
+  <artifactId>test</artifactId>
+  <version>0.1-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+</project>

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/project/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml?rev=697096&view=auto
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml (added)
+++ maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml Fri
Sep 19 06:48:46 2008
@@ -0,0 +1,31 @@
+<?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.
+-->
+
+<settings>
+  <mirrors>
+    <mirror>
+      <id>sandbox</id>
+      <name>A completely isolated repo to test the interpolation of "localRepository"</name>
+      <url>file://@localRepository@</url>
+      <mirrorOf>*</mirrorOf>
+    </mirror>
+  </mirrors>
+</settings>

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-path/src/it/settings.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml?rev=697096&view=auto
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml (added)
+++ maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml Fri Sep 19 06:48:46
2008
@@ -0,0 +1,72 @@
+<?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 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>org.apache.maven.plugins.invoker</groupId>
+  <artifactId>local-repo-url</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <description>
+    Test to check for proper filtering of "localRepositoryUrl" token.
+  </description>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+
+  <build>
+    <plugins>
+      <plugin>
+        <!-- This triggers the download of a known version of this plugin which can then
be safely invoked by the IT project -->
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <version>2.2</version>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-invoker-plugin</artifactId>
+        <version>@pom.version@</version>
+        <configuration>
+          <localRepositoryPath>${project.build.directory}/it-repo</localRepositoryPath>
+          <pomIncludes>
+            <pomInclude>*/pom.xml</pomInclude>
+          </pomIncludes>
+          <settingsFile>src/it/settings.xml</settingsFile>
+          <goals>
+            <goal>org.apache.maven.plugins:maven-resources-plugin:2.2:resources</goal>
+          </goals>
+        </configuration>
+        <executions>
+          <execution>
+            <id>integration-test</id>
+            <goals>
+              <goal>run</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+  </build>
+
+</project>

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml?rev=697096&view=auto
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml
(added)
+++ maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml
Fri Sep 19 06:48:46 2008
@@ -0,0 +1,32 @@
+<?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 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>test</groupId>
+  <artifactId>test</artifactId>
+  <version>0.1-SNAPSHOT</version>
+  <packaging>jar</packaging>
+
+  <properties>
+    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+  </properties>
+</project>

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/project/pom.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Added: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml?rev=697096&view=auto
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml (added)
+++ maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml Fri
Sep 19 06:48:46 2008
@@ -0,0 +1,31 @@
+<?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.
+-->
+
+<settings>
+  <mirrors>
+    <mirror>
+      <id>sandbox</id>
+      <name>A completely isolated repo to test the interpolation of "localRepositoryUrl"</name>
+      <url>@localRepositoryUrl@</url>
+      <mirrorOf>*</mirrorOf>
+    </mirror>
+  </mirrors>
+</settings>

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/plugins/trunk/maven-invoker-plugin/src/it/local-repo-url/src/it/settings.xml
------------------------------------------------------------------------------
    svn:keywords = Author Date Id Revision

Modified: maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java?rev=697096&r1=697095&r2=697096&view=diff
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java
(original)
+++ maven/plugins/trunk/maven-invoker-plugin/src/main/java/org/apache/maven/plugin/invoker/InvokerMojo.java
Fri Sep 19 06:48:46 2008
@@ -1627,6 +1627,17 @@
         if ( settings.getLocalRepository() != null )
         {
             props.put( "localRepository", settings.getLocalRepository() );
+            /*
+             * NOTE: Maven fails to properly handle percent-encoded "file:" URLs (WAGON-111)
so don't use File.toURI()
+             * here and just do it the simple way.
+             */
+            String url = settings.getLocalRepository();
+            if ( !url.startsWith( "/" ) )
+            {
+                url = '/' + url;
+            }
+            url = "file://" + url.replace( '\\', '/' );
+            props.put( "localRepositoryUrl", url );
         }
         return new CompositeMap( this.project, props );
     }

Modified: maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/fast-use.apt.vm
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/fast-use.apt.vm?rev=697096&r1=697095&r2=697096&view=diff
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/fast-use.apt.vm (original)
+++ maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/fast-use.apt.vm Fri Sep
19 06:48:46 2008
@@ -52,7 +52,7 @@
         <configuration>
           ...
           <settingsFile>src/it/settings.xml</settingsFile>
-          ...              
+          ...
         </configuration>
       </plugin>
     </plugins>
@@ -76,7 +76,7 @@
       <repositories>
         <repository>
           <id>local.central</id>
-          <url>file://@localRepository@</url>
+          <url>@localRepositoryUrl@</url>
           <releases>
             <enabled>true</enabled>
           </releases>
@@ -88,7 +88,7 @@
       <pluginRepositories>
         <pluginRepository>
           <id>local.central</id>
-          <url>file://@localRepository@</url>
+          <url>@localRepositoryUrl@</url>
           <releases>
             <enabled>true</enabled>
           </releases>
@@ -102,5 +102,5 @@
 </settings>
 -------------------  
 
-  The token <<<@localRepository@>>> will be automatically replaced by the
Invoker Plugin with the path to the local
+  The token <<<@localRepositoryUrl@>>> will be automatically replaced by
the Invoker Plugin with the URL to the local
   repository used for the Maven invocation.

Modified: maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/filtering.apt.vm
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/filtering.apt.vm?rev=697096&r1=697095&r2=697096&view=diff
==============================================================================
--- maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/filtering.apt.vm (original)
+++ maven/plugins/trunk/maven-invoker-plugin/src/site/apt/examples/filtering.apt.vm Fri Sep
19 06:48:46 2008
@@ -31,12 +31,12 @@
   Some files of the sub projects can be filtered, i.e. special tokens will be replaced by
some other string before the
   actual build is started. In detail, the following files will be filtered:
 
-  * POM files selected by the include/exclude patterns. The tokens to filter must be enclosed
in <<<@...@>>> to avoid
-    interferences with Maven's normal POM interpolation, i.e. use <<<@project.version@>>>
instead of
+  * POM files selected by the include/exclude patterns. The tokens to be filtered must be
enclosed in <<<@...@>>> to
+    avoid interferences with Maven's normal POM interpolation, i.e. use <<<@project.version@>>>
instead of
     <<<$\{project.version\}>>>. Starting with version 1.3, the plugin will
also (recursively) filter all POM files
     referenced via <<<\<parent\>>>> or <<<\<module\>>>>
tags, if the projects are cloned to a temporary location.
 
-  * The custom user setting file. Again, the tokens to filter in this file must be enclosed
in <<<@...@>>>.
+  * The custom user setting file. Again, the tokens to be filtered in this file must be enclosed
in <<<@...@>>>.
 
   * The invoker properties, the goals file and the profiles file. Tokens in these files must
use the usual Maven syntax
     <<<$\{...\}>>>.
@@ -116,6 +116,8 @@
 *--------------------------+----------------------------------------------------------------------------------+--------+
 | <<<localRepository>>>    | The absolute path to the local repository
used for the main build.               | 1.2    |
 *--------------------------+----------------------------------------------------------------------------------+--------+
+| <<<localRepositoryUrl>>> | The <<<file:>>> URL to the
local repository used for the main build.             | 1.3    |
+*--------------------------+----------------------------------------------------------------------------------+--------+
 
   [[3]] The properties given by the parameter <<<filterProperties>>> in
the plugin configuration will be consulted for
         a property whose key equals the token. For the example POM shown above, the value
<<<some-value>>> has been



Mime
View raw message