Feedback:
- 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.

WDYT?

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


Thanks brett for posting that.

white-site is available at
http://people.apache.org/~epunzalan/continuum-white-site/ 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:

http://jira.codehaus.org/browse/CONTINUUM-727
http://jira.codehaus.org/browse/MRELEASE-130

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: http://www.nabble.com/Release- Management-for-Maven-Continuum-tf1771971.html#a5947006
Sent from the Continuum - Dev forum at Nabble.com.

Reply via email to