continuum-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brett Porter <>
Subject Re: Release Management for Maven/Continuum
Date Thu, 24 Aug 2006 02:12:44 GMT
- I'd rather Release be equivalent to "build now" (ie, we might need  
an icon for it), so added to the right-hand tasks per project, and  
added to the individual project page as a button.

- I don't think this should operate on a group. It doesn't  
necessarily equate to a multi-module project, so instead I'd just go  
project by project. If they hit the parent then they get to release a  
bunch at once, as is the case in maven

- I like the summary page that lists out all the defaults, however  
instead of an "edit" link, how about making the whole thing a form  
with defaults that gets submitted?

- I don't think we should have checkboxes on which modules to  
release, as that doesn't really correspond to what we have now, and  
likewise the "from parent" checkbox wouldn't be relevant

- there will be more elements to configure - we should get them into  
the interface now

- on prepare finished, it should look like the build result page. We  
are only building one thing if you agree with the above

- likewise for perform

- as Jason said, prep and perform should be separate. I'm not sure of  
the best way to do this - perhaps hitting the release button presents  
the following options:
   * prepare release from current code
   * perform release from (list of previously prepared releases that  
haven't been performed)
   * perform release from SCM tag

- I think prepare should not be started if the build is currently in  
error in continuum.


On 24/08/2006, at 1:41 AM, elpunzalan wrote:

> Thanks brett for posting that.
> white-site is available at
> groupStatus.html.
> It does not comply 100% with what brett and I have discussed, but  
> it does
> give the flexibility to release the whole project group or just a  
> selected
> few... which kind'a gives us an idea on how continuum will be  
> working on
> multi-project releases.
> I agree that the release process would be a separate background  
> execution
> bec releases should be a closely monitored procedure.
> brettporter wrote:
>> Finally getting around to replying :)
>> I spoke to Edwin on IRC and he's proposed the following steps:
>> 1) go to the project group...
>> 2) then click on the release project icon ( a new icon )
>> 3) then a page will prompt for the release version and the next dev
>> version...
>> 4) after filling the required parameters, click the prepare for
>> release button...
>> 5) the page after the procedure is either a progress or an auto-
>> refreshing page, i'm still open )
>> 6) when the release prepare is a success, then a button for the
>> perform release is shown
>> 7) otherwise, some kind of a build failure report will be shown
>> 8) and repeat 6/7 during perform release
>> So this part is pretty straightforward. For 3) the webwork
>> modeldriven action can be used against the modello model to easily
>> produce a form page. For 5) the WW showcase has a "run in background,
>> show page and refresh" example that could be used, though I consider
>> that a nice to have.
>> There seems to be a pretty good base with the current model. I think
>> the tasks that are needed in the release plugin:
>> - add any missing elements to the model
>> - change the release mojos to marshal arguments to this instead of
>> the current configuration classes and pass that into the release  
>> process
>> - need to retain the ability to prompt for those not specified as
>> happens now, so the prepare(Release) method will be new. Continuum
>> will set the mojo into non-interactive mode to ensure this doesn't
>> happen.
>> And in continuum its wiring up the steps as above. Edwin was going to
>> make adjustments to the white site to be able to visualise this
>> before diving in.
>> The tricky things that might need more discussion:
>> - how are multi-module projects handled in Continuum? I think for
>> this incarnation we go with the simple solution which is to just
>> trigger it on the project on its merits (so if its the parent, the
>> whole lot is released)
>> - how is the project built? Is it queued into Continuum, or are the
>> same tools used to run a separate build in the background?
>> - what files are modified? the current checkout in Continuum, or a
>> clean one? If it is the current one, builds need to be locked out
>> while the release process is in progress.
>> I think the short term solution is to go with a clean checkout and
>> doing it all in the background, separate from the continuum build
>> queue. This seems the easiest.
>> In the long term, has Continuum becomes more feature rich, I would
>> rather see it is a queued build with certain settings enabled (clean
>> checkout, clean repository) so that other features such as monitoring
>> the scheduling could be reused.
>> Thoughts?
>> How could the work be partitioned up so that both interested people
>> can work on it effectively?
>> Cheers,
>> - Brett
>> On 12/06/2006, at 1:46 PM, Jeremy Whitlock wrote:
>>> Continuum Dev,
>>>    I am currently working on a mechanism to have Maven's release
>>> plugin to
>>> actuall use Continuum to perform the release process in a "Release
>>> Management" type of usage.  Jason Van Zyl and I have talked about
>>> this for
>>> the last few days to flesh out the approach and here are the two
>>> Jira that
>>> should get you up to speed with what I am doing:
>>> Jason has given me some good tips and such and I plan on starting  
>>> this
>>> tomorrow sometime.  If any of you have any concerns, complaints or
>>> suggestions, please let me know.
>>> Take care,
>>> Jeremy
> -- 
> View this message in context: 
> Management-for-Maven-Continuum-tf1771971.html#a5947006
> Sent from the Continuum - Dev forum at

View raw message