[ http://jira.codehaus.org/browse/MRELEASE-128?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=246278#action_246278 ]
Stanley Brubaker edited comment on MRELEASE-128 at 12/3/10 9:33 AM: -------------------------------------------------------------------- Maven 2.2.1, maven-release-plugin 2.1. I've put the following in our super pom to give developers a pattern for all projects without having to configure scm in every child pom. We also have the svn host to be set in the settings.xml file: {noformat}<scm> <connection>scm:svn:http://${scm.host}/svn/${project.artifactId}/trunk/</connection> <developerConnection>scm:svn:http://${scm.host}/svn/${project.artifactId}/trunk/</developerConnection> <url>http://${scm.host}/viewvc/${project.artifactId}/trunk/</url> </scm> {noformat} This works fine during development. When we run release:prepare, the checked-in tag pom.xml looks like this: {noformat}<scm> <connection>scm:svn:http://${scm.host}/svn/${project.artifactId}/tags/our-super-pom-1.0</connection> <developerConnection>scm:svn:http://${scm.host}/svn/${project.artifactId}/tags/our-super-pom-1.0</developerConnection> <url>http://${scm.host}/viewvc/${project.artifactId}/tags/our-super-pom-1.0</url> </scm> {noformat} This is incorrect. If I expect to point child poms to the released parent, the scm section should remain the same as it was. Also, the new snapshot pom.xml is changed to this: {noformat}<scm> <connection>scm:svn:http://host.company.net/svn/our-super-pom/trunk/</connection> <developerConnection>scm:svn:http://host.company.net/svn/our-super-pom/trunk/</developerConnection> <url>http://host.company.net/viewvc/our-super-pom/trunk/</url> </scm> {noformat} This is incorrect. The next version of the pom.xml should be left alone, except for the version changing to 1.1-SNAPSHOT. Since we release our parent poms like everything else, there is no reason to modify anything besides the versions during the release process. Can we not have a property the disables substitutions altogether? was (Author: sbrubaker): Maven 2.2.1, maven-release-plugin 2.1. I've put the following in our super pom to give developers a pattern for all projects without having to configure scm in every child pom. We also have the svn host to be set in the settings.xml file: {noformat}<scm> <connection>scm:svn:http://${scm.host}/svn/${project.artifactId}/trunk/</connection> <developerConnection>scm:svn:http://${scm.host}/svn/${project.artifactId}/trunk/</developerConnection> <url>http://${scm.host}/viewvc/${project.artifactId}/trunk/</url> </scm> {noformat} This works fine during development. When we run release:prepare, the checked-in tag pom.xml looks like this: {noformat}<scm> <connection>scm:svn:http://${scm.host}/svn/${project.artifactId}/tags/our-super-pom-1.0</connection> <developerConnection>scm:svn:http://${scm.host}/svn/${project.artifactId}/tags/our-super-pom-1.0</developerConnection> <url>http://${scm.host}/viewvc/${project.artifactId}/tags/our-super-pom-1.0</url> </scm> {noformat} This is correct. However the new snapshot pom.xml is changed to this: {noformat}<scm> <connection>scm:svn:http://host.company.net/svn/our-super-pom/trunk/</connection> <developerConnection>scm:svn:http://host.company.net/svn/our-super-pom/trunk/</developerConnection> <url>http://host.company.net/viewvc/our-super-pom/trunk/</url> </scm> {noformat} This is incorrect. The next version of the pom.xml should be left alone, except for the version changing to 1.1-SNAPSHOT. Since we release our parent poms like everything else, there is no reason to modify anything besides the version and tag name during the release process. > SCM properties being replaced during release:perform > ---------------------------------------------------- > > Key: MRELEASE-128 > URL: http://jira.codehaus.org/browse/MRELEASE-128 > Project: Maven 2.x Release Plugin > Issue Type: Bug > Components: prepare > Environment: Windows XP client, Linux repo, CVS, Maven 2.0.4 > Reporter: Craig Dickson > Assignee: Brett Porter > Priority: Critical > Fix For: 2.1 > > Attachments: after-release-perform-pom.xml, > after-release-prepre-pom.xml, MNG-128-maven-release-manager.patch, > MRELEASE-128_cvs_hack_RewritePomsForDevelopmentPhase.java.patch, > original-pom.xml > > > The <scm> section of a pom in CVS for a pom archetype project looks like this > prior to executing release:prepare : > <scm> > <connection>${base.cvs.url}:commons-maven/uber-pom</connection> > > <developerConnection>${base.cvs.url}:commons-maven/uber-pom</developerConnection> > <url>${base.viewcvs.url}/commons-maven/uber-pom</url> > </scm> > Then after executing release:prepare, the pom in CVS looks like this (new > <tag> tag is only difference): > <scm> > <connection>${base.cvs.url}:commons-maven/uber-pom</connection> > > <developerConnection>${base.cvs.url}:commons-maven/uber-pom</developerConnection> > <url>${base.viewcvs.url}/commons-maven/uber-pom</url> > <tag>R-1_7</tag> > </scm> > Then after executing release:perform, the pom looks like this in CVS: > <scm> > > <connection>scm:cvs:pserver:behrcvs.masco-coatings.com:/usr/cvsroot:commons-maven/uber-pom</connection> > > <developerConnection>scm:cvs:pserver:behrcvs.masco-coatings.com:/usr/cvsroot:commons-maven/uber-pom</developerConnection> > > <url>http://behrcvs.masco-coatings.com/cgi-bin/viewcvs.cgi/commons-maven/uber-pom</url> > </scm> > Notice that the properties that were there for the base URLs for CVS and > ViewCVS have been replaced with literal values. > No other properties in the POM are being replaced -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira