On Feb 7, 2011, at 12:29 AM, Guillaume Nodet wrote: > On Sun, Feb 6, 2011 at 03:25, David Jencks <[email protected]> wrote: >> I might have come up with a way to use the feature plugin packagings in the >> karaf build without profiles as long as we don't use backwards incompatible >> changes in our builds. The main problem I know about is using the release >> plugin to do a release because the new version of the features-maven-plugin >> isn't available in a maven repo yet. >> >> The idea is to define the version of the features-maven-plugin in a maven >> property and override it on the build command line to a previously released >> version. >> >> I've tried this locally with the 2.1.99-SNAPSHOT branch and 2.99.99-SNAPSHOT >> trunk. >> >> First I built the 2.1.99-SNAPSHOT tree to get this version of the plugin in >> my local repo. >> >> Then I cleaned out any mention of the 2.99.99-SNAPSHOT plugin from my repo >> and build trunk with >> >> mvn clean install -DfeaturesPluginVersion=2.1.99-SNAPSHOT >> >> aside from some test failures and problems with a missing war deployer and >> manual artifacts, this worked fine, using the old 2.1.99-SNAPSHOT plugin. >> It also built the 2.99.99-SNAPSHOT plugin. >> >> Then I built trunk >> mvn clean install >> >> which worked just as well, using the new plugin. >> >> So, I think we can leverage this idea in the release plugin, since it builds >> twice with the new version: for release:prepare we use something on the >> command line to get the plugin version into the forked maven command line, >> and for release perform we leave this out. >> >> I think to actually find out if this will work I'll need to do a >> release:prepare on trunk, creating an svn tag which I can then remove again. >> Does this seem worth experimenting with further or is it too complicated or >> does someone know that it won't work? > > Couldn't we create two branches for experimenting so that trunk and > the maintenance branches won't be affected at all ?
I think so. If I have a few minutes soon I'll try that. > But won't the problem still happen in release:perform when building > the non snapshot version ? Well, I haven't tried with the release plugin yet but what I think will happen is: release prepare will use the 2.1.99-SNAPSHOT (or 2.2 if available) features plugin to build karaf, in particular a 3.0 features-maven-plugin which will go in the local maven repo. release perform will use the 3.0 features plugin just built from the local maven repo to build karaf. thanks david jencks > >> >> I think this actually ought to work with version ranges on the plugin but >> AFAICT this is going to show up so many maven bugs as to be unworkable. >> >> thanks >> david jencks >> >> > > > > -- > Cheers, > Guillaume Nodet > ------------------------ > Blog: http://gnodet.blogspot.com/ > ------------------------ > Open Source SOA > http://fusesource.com
