Well, I read in one of your other messages that you don't have access to the other projects and therefor can't use the release-plugin... I'm afraid that means you're pretty much stuck with manually updating these versions.
A possible work-around could be to write a Maven-plugin that updates all the versions... On Thursday 15 November 2007 12:28, Aaron Zeckoski wrote: > Currently the master POM keeps track of things like properties and a > large set of shared dependencies (among other things). > The base POM mostly maintains the set of modules (this POM is swapped > out depending on what kind of release we are doing). > The project POMs are effectively standalone except that they need the > properties and shared dependencies from the master POM. > > Do you still think we should put the base and master together (based > on what I said above)? The key issue here is that the projects need to > be able to evolve separately and we want to be able to create > different kinds of releases. A full release which includes all the > projects, a partial release which includes roughly half of the > projects, and mini release which includes the minimum set of projects > for the system to run. Ideally each release has a separate version > number. > > Currently, we are handling the multiple types of releases with new > base POMs but we have no way to handle the versioning. I am open to > completely changing things around as long as we can get the multiple > types of releases and can control the versions. > > What is the most maintainable way to handle this? > Thanks! > -AZ > > On Nov 15, 2007 10:58 AM, Roland Asmann <[EMAIL PROTECTED]> wrote: > > Looking into your POMs, I think you should start using the release-plugin > > (is you aren't already). Your only problem is that the 'master'-POM > > doesn't know the 'base'-POM. (Seeing there's only 1 of both, why not > > merge them?). > > > > When you use the 'modules'-tag in Maven, the versions are normally > > updated by the release-plugin. So, I suggest you either add the 'base' as > > a module in the 'master', or add a version-tag to the 'base', which can > > then be easily released by Maven. In this last case however, you do need > > to update the version of the 'master' inside the 'base' manually. > > > > It's the same case we have here in my company, we have a company-wide > > master, which is not allowed to know all projects. If this POM gets > > updated, we must manually update out projects. However, we do not HAVE to > > do this, since some changes to the master might be irrelevant for some > > projects. Therefor we stick with this method and let projects decide > > whether or not to update. We do however send all employees a > > release-mail, so they at least know there's a new version. Updating is > > then discussed and decided within the projects. > > > > On Wednesday 14 November 2007 23:44, Aaron Zeckoski wrote: > > > I have a series of 3 POMs and I need to be able to control versioning > > > across them. They are arranged like so: > > > > > > master POM (parent of) base POM (parent of) project POM > > > > > > There is one master and one base POM but there are many many project > > > POMs, roughly 50+ currently with new ones being added > > > > > > The master POM has a version (as it seems all children must specify > > > the version of the parent correctly in the parent tag). The base POM > > > has no version as it inherits from the master. The problem here is > > > that we want to upgrade the overall version... except that every > > > project POM specifies the version of either the master or base POM (in > > > the parent tag). It means we have to somehow coordinate among 50+ > > > projects (which are controlled by various people/groups) and tell them > > > to all change the version of the parent. > > > > > > This is not ideal at all and I suspect we are just doing something > > > dumb or completely wrong. So, how can we control the overall version > > > for all the projects without having to change all of the POMs? > > > > > > You can view the source here if you like: > > > master: https://source.sakaiproject.org/svn/master/trunk/pom.xml > > > base: https://source.sakaiproject.org/contrib/caret/kernel/pom.xml > > > sample project: > > > https://source.sakaiproject.org/contrib/caret/kernel/alias/pom.xml > > > > > > -AZ > > > > -- > > Roland Asmann > > > > CFC Informationssysteme Entwicklungsgesellschaft m.b.H > > Bäckerstrasse 1/2/7 > > A-1010 Wien > > FN 266155f, Handelsgericht Wien > > > > Tel.: +43/1/513 88 77 - 27 > > Fax.: +43/1/513 88 62 > > Email: [EMAIL PROTECTED] > > Web: www.cfc.at > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] -- Roland Asmann CFC Informationssysteme Entwicklungsgesellschaft m.b.H Bäckerstrasse 1/2/7 A-1010 Wien FN 266155f, Handelsgericht Wien Tel.: +43/1/513 88 77 - 27 Fax.: +43/1/513 88 62 Email: [EMAIL PROTECTED] Web: www.cfc.at --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
