You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by br...@apache.org on 2006/05/03 18:08:55 UTC
svn commit: r399345 - in /maven/plugins/trunk/maven-release-plugin/src:
main/java/org/apache/maven/plugins/release/phase/
main/java/org/apache/maven/plugins/release/scm/
test/java/org/apache/maven/plugins/release/phase/
test/resources/projects/rewrite-...
Author: brett
Date: Wed May 3 09:08:53 2006
New Revision: 399345
URL: http://svn.apache.org/viewcvs?rev=399345&view=rev
Log:
[MRELEASE-43] use tag base when rewriting POM
Added:
maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/
maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml (with props)
maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml (with props)
Modified:
maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java
maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/CvsScmTranslator.java
maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/ScmTranslator.java
maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/SubversionScmTranslator.java
maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java
Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java?rev=399345&r1=399344&r2=399345&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhase.java Wed May 3 09:08:53 2006
@@ -56,19 +56,29 @@
{
Scm scm = project.getOriginalModel().getScm();
String tag = releaseConfiguration.getReleaseLabel();
+ String tagBase = releaseConfiguration.getTagBase();
+
+ // TODO: svn utils should take care of prepending this
+ if ( tagBase != null )
+ {
+ tagBase = "scm:svn:" + tagBase;
+ }
scmRoot.getChild( "connection", namespace ).setText(
- translator.translateTagUrl( scm.getConnection(), tag ) );
+ translator.translateTagUrl( scm.getConnection(), tag, tagBase ) );
Element devConnection = scmRoot.getChild( "developerConnection", namespace );
if ( devConnection != null )
{
- devConnection.setText( translator.translateTagUrl( scm.getDeveloperConnection(), tag ) );
+ devConnection.setText(
+ translator.translateTagUrl( scm.getDeveloperConnection(), tag, tagBase ) );
}
Element url = scmRoot.getChild( "url", namespace );
if ( url != null )
{
- url.setText( translator.translateTagUrl( scm.getUrl(), tag ) );
+ // use original tag base without protocol
+ url.setText(
+ translator.translateTagUrl( scm.getUrl(), tag, releaseConfiguration.getTagBase() ) );
}
rewriteTagElement( translator, tag, scmRoot, namespace );
Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/CvsScmTranslator.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/CvsScmTranslator.java?rev=399345&r1=399344&r2=399345&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/CvsScmTranslator.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/CvsScmTranslator.java Wed May 3 09:08:53 2006
@@ -24,7 +24,7 @@
public class CvsScmTranslator
implements ScmTranslator
{
- public String translateTagUrl( String url, String tag )
+ public String translateTagUrl( String url, String tag, String tagBase )
{
return url;
}
Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/ScmTranslator.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/ScmTranslator.java?rev=399345&r1=399344&r2=399345&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/ScmTranslator.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/ScmTranslator.java Wed May 3 09:08:53 2006
@@ -32,11 +32,12 @@
/**
* Take an URL and find the correct replacement URL for a given tag.
*
- * @param url the source URL
- * @param tag the tag
+ * @param url the source URL
+ * @param tag the tag
+ * @param tagBase the tag base for providers that support it
* @return the replacement URL
*/
- String translateTagUrl( String url, String tag );
+ String translateTagUrl( String url, String tag, String tagBase );
/**
* Determine what tag should be added to the POM given the original tag and the new one.
Modified: maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/SubversionScmTranslator.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/SubversionScmTranslator.java?rev=399345&r1=399344&r2=399345&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/SubversionScmTranslator.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/main/java/org/apache/maven/plugins/release/scm/SubversionScmTranslator.java Wed May 3 09:08:53 2006
@@ -26,9 +26,9 @@
public class SubversionScmTranslator
implements ScmTranslator
{
- public String translateTagUrl( String url, String tag )
+ public String translateTagUrl( String url, String tag, String tagBase )
{
- return SvnTagBranchUtils.resolveTagUrl( url, tag );
+ return SvnTagBranchUtils.resolveUrl( url, tagBase, SvnTagBranchUtils.SVN_TAGS, tag );
}
public String resolveTag( String tag )
Modified: maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java?rev=399345&r1=399344&r2=399345&view=diff
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java (original)
+++ maven/plugins/trunk/maven-release-plugin/src/test/java/org/apache/maven/plugins/release/phase/RewritePomsForReleasePhaseTest.java Wed May 3 09:08:53 2006
@@ -188,6 +188,18 @@
assertTrue( compareFiles( config.getReactorProjects() ) );
}
+ public void testRewriteBasicPomWithTagBase()
+ throws Exception
+ {
+ ReleaseConfiguration config = createConfigurationFromProjects( "basic-pom-with-tag-base" );
+ config.setTagBase( "file://localhost/tmp/scm-repo/releases" );
+ mapNextVersion( config, "groupId:artifactId" );
+
+ phase.execute( config );
+
+ assertTrue( compareFiles( config.getReactorProjects() ) );
+ }
+
public void testRewriteBasicPomWithCvsFromTag()
throws Exception
{
Added: maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml?rev=399345&view=auto
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml (added)
+++ maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml Wed May 3 09:08:53 2006
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Copyright 2005-2006 The Apache Software Foundation.
+ ~
+ ~ Licensed 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>groupId</groupId>
+ <artifactId>artifactId</artifactId>
+ <version>1.0</version>
+
+ <prerequisites>
+ <maven>2.0.4</maven>
+ </prerequisites>
+
+ <scm>
+ <connection>scm:svn:file://localhost/tmp/scm-repo/releases/release-label</connection>
+ <developerConnection>scm:svn:file://localhost/tmp/scm-repo/releases/release-label</developerConnection>
+ <url>file://localhost/tmp/scm-repo/releases/release-label</url>
+ </scm>
+</project>
\ No newline at end of file
Propchange: maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/expected-pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision
Added: maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml
URL: http://svn.apache.org/viewcvs/maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml?rev=399345&view=auto
==============================================================================
--- maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml (added)
+++ maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml Wed May 3 09:08:53 2006
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ ~ Copyright 2005-2006 The Apache Software Foundation.
+ ~
+ ~ Licensed 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>groupId</groupId>
+ <artifactId>artifactId</artifactId>
+ <version>1.0-SNAPSHOT</version>
+
+ <prerequisites>
+ <maven>2.0.4</maven>
+ </prerequisites>
+
+ <scm>
+ <connection>scm:svn:file://localhost/tmp/scm-repo/trunk</connection>
+ <developerConnection>scm:svn:file://localhost/tmp/scm-repo/trunk</developerConnection>
+ <url>file://localhost/tmp/scm-repo/trunk</url>
+ </scm>
+</project>
\ No newline at end of file
Propchange: maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/plugins/trunk/maven-release-plugin/src/test/resources/projects/rewrite-for-release/basic-pom-with-tag-base/pom.xml
------------------------------------------------------------------------------
svn:keywords = Author Date Id Revision