[ 
http://jira.codehaus.org/browse/MRELEASE-261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129890#action_129890
 ] 

aleggett edited comment on MRELEASE-261 at 4/5/08 8:39 AM:
---------------------------------------------------------------

Attaching a prospective workaround patch for this issue.

Patch adds a new configuration property 'tagWorkingDirectory' to Prepare mojo. 
Then in your relative parent pom you can configure like this:
{noformat}
<plugin>
             <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-release-plugin</artifactId>
             <version>2.0-beta-7-PATCHED</version>
             <configuration>
                            
<tagWorkingDirectory>${basedir}/..</tagWorkingDirectory>
                            <preparationGoals>
                                        clean verify -f ${artifactId}/pom.xml
                             </preparationGoals>
                             
<connectionUrl>scm:svn:svn://localhost/svn/relative-parent/tags/${artifactId}-${release.version}</connectionUrl>
                             <goals>clean deploy</goals>
                             <pomFileName>${artifactId}/pom.xml</pomFileName>
                            <arguments>-f ${artifactId}/pom.xml</arguments>
               </configuration>
</plugin>
{noformat}
The additional config is to ensure the parent pom gets found for the forked 
lifecycles in release:prepare and release:perform. In addition, due to the 
release manager now putting the release descriptor (release.properties) in 
$[basedir}/.. you need to specify the connectionUrl for release:perform. I 
guess you could write some script to move it or, as above, fill in the url 
apart from the release version e.g.

{noformat}
#hello-world/hello-world-parent> mvn release:prepare release:perform 
-Drelease.version=1.7 --batch-mode
{noformat}

Hope this is useful.

Adam

      was (Author: aleggett):
    Attaching a prospective workaround patch for this issue.

Patch adds a new configuration property 'tagWorkingDirectory' to Prepare mojo. 
Then in your relative parent pom you can configure like this:
{noformat}
<plugin>
                   <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
        <version>2.0-beta-7-PATCHED</version>
        <configuration>
                              
<tagWorkingDirectory>${basedir}/..</tagWorkingDirectory>
                <preparationGoals>
                        clean verify -f ${artifactId}/pom.xml
                </preparationGoals>
                
<connectionUrl>scm:svn:svn://localhost/svn/relative-parent/tags/${artifactId}-${release.version}</connectionUrl>
                <goals>clean deploy</goals>
                <pomFileName>${artifactId}/pom.xml</pomFileName>
                <arguments>-f ${artifactId}/pom.xml</arguments>
        </configuration>
</plugin>
{noformat}
The additional config is to ensure the parent pom gets found for the forked 
lifecycles in release:prepare and release:perform. In addition, due to the 
release manager now putting the release descriptor (release.properties) in 
$[basedir}/.. you need to specify the connectionUrl for release:perform. I 
guess you could write some script to move it or, as above, fill in the url 
apart from the release version e.g.

{noformat}
#hello-world/hello-world-parent> mvn release:prepare release:perform 
-Drelease.version=1.7 --batch-mode
{noformat}

Hope this is useful.

Adam
  
> release:prepare shouls support flat directory multimodule projects
> ------------------------------------------------------------------
>
>                 Key: MRELEASE-261
>                 URL: http://jira.codehaus.org/browse/MRELEASE-261
>             Project: Maven 2.x Release Plugin
>          Issue Type: Improvement
>         Environment: linux / maven2 / svn
>            Reporter: [EMAIL PROTECTED]
>         Attachments: PrepareReleaseMojo.patch
>
>
> What I mean by flat file structure firstly.
> parent/pom.xml
> module1/pom.xml
> module2/pom.xml
> .
> .
> .
> module15/pom.xml
> the parent references the modules like so
> <modules>
>               <module>../module1</module>
>               <module>../module2</module>
> .
> .
> .
>               <module>../module15</module>
> </modules>
> When i  release:prepare only the parent project is tagged the modules 
> projects versions are incremented etc but the modules are not tagged in svn.
> I use this structure as i use eclipse as my IDE.
> I would love to see a fix for the issue marked as closed here 
> http://jira.codehaus.org/browse/MRELEASE-138. I am currenrly tagging by hand 
> each submodule of the projects but it would be so nice to have the release 
> plugin do this for me.
> forgive my english.

-- 
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

        

Reply via email to