You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Robert Scholte (JIRA)" <ji...@apache.org> on 2018/01/13 15:46:02 UTC

[jira] [Closed] (MRELEASE-956) Release Strategy Interface

     [ https://issues.apache.org/jira/browse/MRELEASE-956?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Scholte closed MRELEASE-956.
-----------------------------------
       Resolution: Fixed
    Fix Version/s: 3.0.0

I've already implemented it after the huge cleanup for 3.0.0 :)
Fixed in [bea23130c9cf66fbc21061822d185b331a2c93b3|https://gitbox.apache.org/repos/asf?p=maven-release.git;a=commit;h=bea23130c9cf66fbc21061822d185b331a2c93b3]

> Release Strategy Interface
> --------------------------
>
>                 Key: MRELEASE-956
>                 URL: https://issues.apache.org/jira/browse/MRELEASE-956
>             Project: Maven Release Plugin
>          Issue Type: New Feature
>          Components: perform
>            Reporter: Markus Karg
>            Assignee: Robert Scholte
>              Labels: strategy
>             Fix For: 3.0.0
>
>
> The release plugin has built-in strategies for preparation and performing of a release. For example, the strategy for preparation contains increasing versions numbers, comitting to SCM, tagging in SCM, and so.
> Not all users share the same strategies in real life. For example, some companies might want to have a tag AND and a branch created in SCM when preparing a release. Or other companies might want to have tag created for "prepared-release-1.0.0" at preparation, and replace it by "release-1.0.0" as part of release:perform.
> To provide better flexibility of such company-wide strategies, it might be a solution to introduce an interface "ReleaseStrategy" which acts as a worker for the prepare and perform goals (and possibly others). The current built-in strategy could be refactored to be a default-included "DefaultReleaseStrategy" for backwards compatibility, while users could configure a new property "releaseStrategy" to point to an Extension which provides a differently working strategy.
> To make this work, certainly the Strategy implementation needs to get passed a context which allows to fire actions like "tag version", "create branch", "change pom version" and so on, just as the current built-in strategy has.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)