Re: Release Management with Many, Independent Projects...

2012-06-30 Thread James Carman
Another issue with using scripts to do the "release" is that I'd have to code the SCM "tagging" part, too, since we would want to be able to have something we can use to re-create the release if necessary. The maven release plugin does all of this for me. On Mon, Jun 18, 2012 at 11:03 PM, James C

Re: Release Management with Many, Independent Projects...

2012-06-19 Thread James Carman
The "dance" was only required because we have a hierarchy of poms and one of the top-level guys had to change. This change was required to make the OSGi stuff "happy", so it had to be propagated down. I ended up writing a simple ruby script that searches through all of the pom.xml files in a dire

Re: Release Management with Many, Independent Projects...

2012-06-18 Thread Mark Derricutt
Step 1) Separate your API interfaces into their own bundles, with their own release cadence. Step 2) Code solely against APIs, and against version ranges ( we use [1.0.0,2.0.0) style. Given things in OSGi land are service/interface orientated this works well. We try to follow the semver style

Re: Release Management with Many, Independent Projects...

2012-06-18 Thread Barrie Treloar
I think what Ron is saying, is that choosing what Project A depends on is selected at the time Project A is kicked off. Until Project A is released all its dependencies should be locked down and only use release versions (if possible). You would only upgrade a dependency when a critical bug blocks

Re: Release Management with Many, Independent Projects...

2012-06-18 Thread James Carman
Well, we are using the release plugin to do our releases. I would rather stick with that if we can, since we've got Jenkins all set up to do the releases with a push of a button and everything. I could probably make all the pom.xml modifications with a find/replace (sed perhaps), check in the cha

Re: Release Management with Many, Independent Projects...

2012-06-18 Thread Ron Wheeler
We stayed manual. I figured it was a small overhead at the start of a new release cycle but we only had 70 modules to manage and we were pretty modular. I suppose Ant and XLST scripts would do the job pretty well. Check out each project. Use XSLT (or some other XML transformer) to fix the right

Release Management with Many, Independent Projects...

2012-06-18 Thread James Carman
We are an OSGi shop. Thus, we have a lot of "bundle" projects that have their own independent release cycles. We have a hierarchy of parent POMs and many utility libraries. When we change one of the upper-level POMs (like the "base" for all of our OSGi bundles), it is very time-consuming to poin