You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "William Ferguson (JIRA)" <ji...@codehaus.org> on 2007/05/23 03:16:58 UTC

[jira] Created: (MRELEASE-235) Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase

Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase
--------------------------------------------------------------------------------------------------

                 Key: MRELEASE-235
                 URL: http://jira.codehaus.org/browse/MRELEASE-235
             Project: Maven 2.x Release Plugin
          Issue Type: New Feature
          Components: scm
    Affects Versions: 2.0-beta-6
            Reporter: William Ferguson


During release:prepare I have a plugin that needs to be called after the scm-tag phase but before the scm-commit-development phase.

My plugin updates the subclipse-tags property trunk folder so that Subclipse (Eclipse plugin for SVN) can provide good visual clues on the history tab showing which revisions were released and a what. 

My plugin needs to be able to 
1) read release.properties to get the scm.tag
2) use SVN to retrieve the SVN Revision for the scm.tag (hence need to execute after scm-tag phase)
3) use SVN to retrieve the subclipse-tags property from the trunk
4) Append the appropriate tag lines to the retrieve property.
5) use SVN to update the subclipse-tags property on the trunk
6) Either use SVN to commit or be comfortable that an SVN commit will occur by other means (hence need to execute before scm-commit-development-phase)

I'm not sure of the best approach to take. A new phase needs to available in which to execute. Either
a) after scm-tag but before scm-commit-development in which case I leave the commit to the scm-commit-development phase. Perhaps a little too coupled and hides a little too much meaning, but only generates 2 commits for a release instead of 3.
b) after scm-commit-development (eg run-post-preparation-goals) which is self contained as it needs to commit. It will generate an extra commit each release, but the commit message can at least clearly relate to update of the subclipse-tags property. I think I'll attempt this.

I thought I could take the easy approach and run the goal during release:perform, but the basedir during run-perform-goals is project.basedir/target/checkout and points to the Tag not the trunk. So my plugin would become highly coupled to being executed during release:perform as well as having intimate knowledge of expecting execution folders.

Unless someone interjects I intend on having a go at this and providing it as a patch.
So if I'm way off base please provide feedback to guide me.

What's the expected release date for 2.0-beta-6 ?

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

        

[jira] (MRELEASE-235) Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase

Posted by "Robert Scholte (JIRA)" <ji...@codehaus.org>.
     [ https://jira.codehaus.org/browse/MRELEASE-235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Scholte closed MRELEASE-235.
-----------------------------------

    Resolution: Duplicate
      Assignee: Robert Scholte

It has already been fixed in version 2.2
You can use the [completionGoals|http://maven.apache.org/plugins/maven-release-plugin/prepare-mojo.html#completionGoals]
                
> Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase
> --------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-235
>                 URL: https://jira.codehaus.org/browse/MRELEASE-235
>             Project: Maven 2.x Release Plugin
>          Issue Type: New Feature
>          Components: scm
>    Affects Versions: 2.0-beta-6
>            Reporter: William Ferguson
>            Assignee: Robert Scholte
>         Attachments: MRELEASE-235-patch.txt
>
>
> During release:prepare I have a plugin that needs to be called after the scm-tag phase but before the scm-commit-development phase.
> My plugin updates the subclipse-tags property trunk folder so that Subclipse (Eclipse plugin for SVN) can provide good visual clues on the history tab showing which revisions were released and a what. 
> My plugin needs to be able to 
> 1) read release.properties to get the scm.tag
> 2) use SVN to retrieve the SVN Revision for the scm.tag (hence need to execute after scm-tag phase)
> 3) use SVN to retrieve the subclipse-tags property from the trunk
> 4) Append the appropriate tag lines to the retrieve property.
> 5) use SVN to update the subclipse-tags property on the trunk
> 6) Either use SVN to commit or be comfortable that an SVN commit will occur by other means (hence need to execute before scm-commit-development-phase)
> I'm not sure of the best approach to take. A new phase needs to available in which to execute. Either
> a) after scm-tag but before scm-commit-development in which case I leave the commit to the scm-commit-development phase. Perhaps a little too coupled and hides a little too much meaning, but only generates 2 commits for a release instead of 3.
> b) after scm-commit-development (eg run-post-preparation-goals) which is self contained as it needs to commit. It will generate an extra commit each release, but the commit message can at least clearly relate to update of the subclipse-tags property. I think I'll attempt this.
> I thought I could take the easy approach and run the goal during release:perform, but the basedir during run-perform-goals is project.basedir/target/checkout and points to the Tag not the trunk. So my plugin would become highly coupled to being executed during release:perform as well as having intimate knowledge of expecting execution folders.
> Unless someone interjects I intend on having a go at this and providing it as a patch.
> So if I'm way off base please provide feedback to guide me.
> What's the expected release date for 2.0-beta-6 ?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (MRELEASE-235) Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase

Posted by "William Ferguson (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MRELEASE-235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

William Ferguson updated MRELEASE-235:
--------------------------------------

    Attachment: MRELEASE-235-patch.txt

This patch adds another preparation phase (run-post-preparation-goals) that runs like so:
          <phase>scm-commit-development</phase>
          <phase>run-post-preparation-goals</phase>
          <phase>end-release</phase>

It allows execution of user-defined goals during the release:prepare but after the project has been released.
Eg updating of SCM properties to refer to new tag - subclipse:tags property.

I have added test case for it which is essentially a copy of the RunPreparationGoalsPhaseTest.

Any chance it can be included with 2.0-beta-6 since another build is going to be required anyway (due to http://jira.codehaus.org/browse/MRELEASE-236) ?

> Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase
> --------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-235
>                 URL: http://jira.codehaus.org/browse/MRELEASE-235
>             Project: Maven 2.x Release Plugin
>          Issue Type: New Feature
>          Components: scm
>    Affects Versions: 2.0-beta-6
>            Reporter: William Ferguson
>         Attachments: MRELEASE-235-patch.txt
>
>
> During release:prepare I have a plugin that needs to be called after the scm-tag phase but before the scm-commit-development phase.
> My plugin updates the subclipse-tags property trunk folder so that Subclipse (Eclipse plugin for SVN) can provide good visual clues on the history tab showing which revisions were released and a what. 
> My plugin needs to be able to 
> 1) read release.properties to get the scm.tag
> 2) use SVN to retrieve the SVN Revision for the scm.tag (hence need to execute after scm-tag phase)
> 3) use SVN to retrieve the subclipse-tags property from the trunk
> 4) Append the appropriate tag lines to the retrieve property.
> 5) use SVN to update the subclipse-tags property on the trunk
> 6) Either use SVN to commit or be comfortable that an SVN commit will occur by other means (hence need to execute before scm-commit-development-phase)
> I'm not sure of the best approach to take. A new phase needs to available in which to execute. Either
> a) after scm-tag but before scm-commit-development in which case I leave the commit to the scm-commit-development phase. Perhaps a little too coupled and hides a little too much meaning, but only generates 2 commits for a release instead of 3.
> b) after scm-commit-development (eg run-post-preparation-goals) which is self contained as it needs to commit. It will generate an extra commit each release, but the commit message can at least clearly relate to update of the subclipse-tags property. I think I'll attempt this.
> I thought I could take the easy approach and run the goal during release:perform, but the basedir during run-perform-goals is project.basedir/target/checkout and points to the Tag not the trunk. So my plugin would become highly coupled to being executed during release:perform as well as having intimate knowledge of expecting execution folders.
> Unless someone interjects I intend on having a go at this and providing it as a patch.
> So if I'm way off base please provide feedback to guide me.
> What's the expected release date for 2.0-beta-6 ?

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

        

[jira] Updated: (MRELEASE-235) Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase

Posted by "Arnaud Heritier (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MRELEASE-235?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Arnaud Heritier updated MRELEASE-235:
-------------------------------------

    Patch Submitted: [Yes]

> Need ability to execute goals during prepare after scm-tag but before scm-commit-development phase
> --------------------------------------------------------------------------------------------------
>
>                 Key: MRELEASE-235
>                 URL: http://jira.codehaus.org/browse/MRELEASE-235
>             Project: Maven 2.x Release Plugin
>          Issue Type: New Feature
>          Components: scm
>    Affects Versions: 2.0-beta-6
>            Reporter: William Ferguson
>         Attachments: MRELEASE-235-patch.txt
>
>
> During release:prepare I have a plugin that needs to be called after the scm-tag phase but before the scm-commit-development phase.
> My plugin updates the subclipse-tags property trunk folder so that Subclipse (Eclipse plugin for SVN) can provide good visual clues on the history tab showing which revisions were released and a what. 
> My plugin needs to be able to 
> 1) read release.properties to get the scm.tag
> 2) use SVN to retrieve the SVN Revision for the scm.tag (hence need to execute after scm-tag phase)
> 3) use SVN to retrieve the subclipse-tags property from the trunk
> 4) Append the appropriate tag lines to the retrieve property.
> 5) use SVN to update the subclipse-tags property on the trunk
> 6) Either use SVN to commit or be comfortable that an SVN commit will occur by other means (hence need to execute before scm-commit-development-phase)
> I'm not sure of the best approach to take. A new phase needs to available in which to execute. Either
> a) after scm-tag but before scm-commit-development in which case I leave the commit to the scm-commit-development phase. Perhaps a little too coupled and hides a little too much meaning, but only generates 2 commits for a release instead of 3.
> b) after scm-commit-development (eg run-post-preparation-goals) which is self contained as it needs to commit. It will generate an extra commit each release, but the commit message can at least clearly relate to update of the subclipse-tags property. I think I'll attempt this.
> I thought I could take the easy approach and run the goal during release:perform, but the basedir during run-perform-goals is project.basedir/target/checkout and points to the Tag not the trunk. So my plugin would become highly coupled to being executed during release:perform as well as having intimate knowledge of expecting execution folders.
> Unless someone interjects I intend on having a go at this and providing it as a patch.
> So if I'm way off base please provide feedback to guide me.
> What's the expected release date for 2.0-beta-6 ?

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