I'm good at the moment, just chugging through all the minute details. 
I'll submit a patch for inclusion of all the pom files so that everyone
can get it on master.  Then I'll start working on how to get the
existing rpm/deb builds to use maven to pull the deps.

Darren




> -------- Original Message --------
> Subject: RE: [DISCUSS] Please choose: The build system to use for 4.0
> From: Hugo Trippaers <htrippa...@schubergphilis.com>
> Date: Mon, August 20, 2012 2:09 am
> To: "cloudstack-dev@incubator.apache.org"
> <cloudstack-dev@incubator.apache.org>
> 
> 
> Hey Darren,
> 
> 
> 
> Good stuff, works like a charm. 
> 
> 
> 
> Following recent mails I believe we pretty much have a consensus on using 
> maven, so I think we can move ahead with this. Depending on the release 
> schedule we can or can't include it in 4.0, but that's no show stopper for 
> anybody.
> 
> 
> 
> Anything I can do to help out?
> 
> 
> 
> Cheers,
> 
> 
> 
> Hugo
> 
> 
> 
> 
> 
> 
> 
> -----Original Message-----
> 
> From: Darren Shepherd [mailto:dar...@godaddy.com] 
> 
> Sent: Sunday, August 19, 2012 3:56 AM
> 
> To: cloudstack-dev@incubator.apache.org
> 
> Subject: RE: [DISCUSS] Please choose: The build system to use for 4.0
> 
> 
> 
> All,
> 
> 
> 
> So I have maven fully functional.  I sent an email regarding this but being 
> that it wasn't on this thread so it probably went un-noticed.  So below is 
> basically a copy of that.
> 
> 
> 
> If you want to get an idea of what maven would look like for CS, what I've 
> done is on the "maven"
> 
> branch at https://github.com/ibuildthecloud/incubator-cloudstack.git
> 
> 
> 
> I had to setup a custom repo to put all the non-oss libraries that don't 
> exist in the central maven repo. To build just do "mvn -s m2-settings.xml"
> 
> 
> 
> That settings file will create a local repo (not use ~/.m2/repository) 
> because I was testing that all dependencies are coming from where I expected 
> and not polluted by other maven stuff I do.
> 
> 
> 
> Its a multi module project so you can do things like "mvn -s m2-settings -am 
> -pl server" to just build the server portion (or core, or one of the tons of 
> plugins).  I also tested that the build works with maven 2 and maven 3 and 
> that the Eclipse M2E plugin works with it too.
> 
> 
> 
> I would love it if a maven god could review what I've done.  If we're all 
> good with maven I'll gladly take this to full completion and start submitting 
> patches.  Post 4.0 we can always improve (and I'm sure we will), but I feel I 
> know what's the bare minimum need to get this out the door and I can do that 
> (plus whatever nice to haves I can squeek in).
> 
> 
> 
> Regarding the dev environment setup.  We can do this with whatever little 
> amount of impact we want.  Once you have the maven pom's you just install 
> Eclipse M2E (thats an eclipse foundation project) and then say "Import 
> Existing Maven Projects" and then magic ensues.  The M2E plugin works pretty 
> darn well.  It also has the great benefit that you can stop checking in 
> .classpath and .project files in the your version control because the pom.xml 
> has all the metadata Eclipse M2E needs to create a
> 
> project.   So my preferred approach would be to checkin the pom's and
> 
> then delete the .classpath and .project files from git and have developers 
> re-import their projects into eclipse.  If people don't like that I can use 
> some magic with the mvn depenendency:copy-dependencies to recreate the same 
> structure as whats in deps today to make the eclipse projects still work.  
> But I would grudgingly do that work as I would rather we just move forward 
> with a standard maven layout.  Gotta learn sometime and I don't think its all 
> that difficult.
> 
> 
> 
> Regarding the ant tasks, I want to keep backwards compatibilty so that the 
> main ant tasks still work but just internally call maven and not javac/jar 
> directly.
> 
> 
> 
> So I vote we just let me do this and I'll get 'er done.
> 
> 
> 
> Darren
> 
> 
> 
> 
> 
> 
> 
> > -------- Original Message --------
> 
> > Subject: RE: [DISCUSS] Please choose: The build system to use for 4.0
> 
> > From: Ewan Mellor <ewan.mel...@eu.citrix.com>
> 
> > Date: Fri, August 17, 2012 2:22 pm
> 
> > To: "cloudstack-dev@incubator.apache.org"
> 
> > <cloudstack-dev@incubator.apache.org>
> 
> > 
> 
> > 
> 
> > Well, all our packages are going to be public, of course.  That shouldn't 
> > be a problem!
> 
> > 
> 
> > Ewan.
> 
> > 
> 
> > > -----Original Message-----
> 
> > > From: Marcus Sorensen [mailto:shadow...@gmail.com]
> 
> > > Sent: 17 August 2012 14:19
> 
> > > To: cloudstack-dev@incubator.apache.org
> 
> > > Subject: Re: [DISCUSS] Please choose: The build system to use for 
> 
> > > 4.0
> 
> > > 
> 
> > > I'm totally fine with a switch, my only concern was around when it's done.
> 
> > > Aside from just implementing the build bits in the git repo (sounds 
> 
> > > like there are resources for this), I picture there being a bit of 
> 
> > > work on every developer's part to switch their dev environments. 
> 
> > > This might be as simple as a few package installs, but on at least 
> 
> > > one occasion when I was building something via Maven I had to spend 
> 
> > > the better part of an afternoon going back and forth with the 
> 
> > > network/systems guys because Maven needed to download some 
> 
> > > components and the applicable systems by default are internal-access 
> 
> > > only. It's things like that where I worry about switching build systems 
> > > when people are under a crunch to complete 4.0.
> 
> > > 
> 
> > > On Fri, Aug 17, 2012 at 2:04 PM, Ewan Mellor 
> 
> > > <ewan.mel...@eu.citrix.com>
> 
> > > wrote:
> 
> > > > OK, so we've got offers of effort on Maven from Darren, Hugo, plus 
> 
> > > > review
> 
> > > help from Olivier and Alex.  Maven gets +1 from me, Alex, and Brett too.
> 
> > > >
> 
> > > > On the Ant side we've got +1 from Chip ("based on timeline"), 
> 
> > > > Wido,
> 
> > > Marcus, and Mice.  David has his deps-ctrl branch, but no-one has 
> 
> > > offered to finish the job.
> 
> > > >
> 
> > > > We have consensus that the release is going to slip by at least 3 
> 
> > > > weeks (2 at
> 
> > > the front and one at the end), which gives us four weeks total to 
> 
> > > get the build system done and debugged (i.e. between now and final 
> 
> > > release candidate on Sep 14).
> 
> > > >
> 
> > > > With that extra time, does that change anyone's opinion?  It would 
> 
> > > > be nice
> 
> > > to get consensus on this issue, otherwise we're going to have to put 
> 
> > > it to a vote.
> 
> > > >
> 
> > > > Thanks,
> 
> > > >
> 
> > > > Ewan.
> 
> > > >
> 
> > > >
> 
> > > >> -----Original Message-----
> 
> > > >> From: akaras...@gmail.com [mailto:akaras...@gmail.com] On Behalf 
> 
> > > >> Of Alex Karasulu
> 
> > > >> Sent: 17 August 2012 03:11
> 
> > > >> To: cloudstack-dev@incubator.apache.org
> 
> > > >> Subject: Re: [DISCUSS] Please choose: The build system to use for 
> 
> > > >> 4.0
> 
> > > >>
> 
> > > >> On Fri, Aug 17, 2012 at 1:00 PM, Olivier Lamy <ol...@apache.org> wrote:
> 
> > > >>
> 
> > > >> > +1 for Apache Maven
> 
> > > >>
> 
> > > >>
> 
> > > >> Ditto but this can happen any time and in parallel. I understand 
> 
> > > >> and appreciate the time limitations for the 4.0 release.
> 
> > > >>
> 
> > > >>
> 
> > > >> > (but I agree my POV can be considered non objective :-)
> 
> > > >> > ) or at least our own Apache dogfood.
> 
> > > >> > I agree this can late for 4.0 (why not for 4.1) Btw if someone 
> 
> > > >> > push poc on a branch I can help to review as I have a bit of 
> 
> > > >> > experience on (and Brett too :-) ).
> 
> > > >> >
> 
> > > >>
> 
> > > >> I'm not a Maven demigod like Brett, but I can help out here as well.
> 
> > > >>
> 
> > > >>
> 
> > > >> >
> 
> > > >> > Olivier
> 
> > > >> > Le 16 août 2012 23:12, "David Nalley" <da...@gnsa.us> a écrit :
> 
> > > >> >
> 
> > > >> > > Hi folks,
> 
> > > >> > >
> 
> > > >> > > I am particularly limiting the scope of this to what we do 
> 
> > > >> > > for 4.0, since that is the pressing timeline.
> 
> > > >> > >
> 
> > > >> > > Here are the current options:
> 
> > > >> > >
> 
> > > >> > > * Continue using ant, and have the hacky stuff I wrote as ant 
> 
> > > >> > > targets deal with dependency resolution. (see the differences 
> 
> > > >> > > in the deps-ctrl
> 
> > > >> > > branch)
> 
> > > >> > >
> 
> > > >> > > * Use Gradle (see the gradle branch)
> 
> > > >> > >
> 
> > > >> > > * Use Maven (I haven't seen any of this, but Darren reports 
> 
> > > >> > > that he has this building - Darren: can we see this somewhere 
> 
> > > >> > > publicly
> 
> > > >> > > perhaps?)
> 
> > > >> > >
> 
> > > >> > > While I'd like to have us choose the system that we are going 
> 
> > > >> > > to use for all time (and despite some reservations, I think 
> 
> > > >> > > Maven is likely my personal choice for what we should move to 
> 
> > > >> > > long term), I am also concerned that we don't let the perfect 
> 
> > > >> > > become the enemy
> 
> > > of the good.
> 
> > > >> > > So given all of that - what should our choice be?
> 
> > > >> > >
> 
> > > >> > > --David
> 
> > > >> > >
> 
> > > >> >
> 
> > > >>
> 
> > > >>
> 
> > > >>
> 
> > > >> --
> 
> > > >> Best Regards,
> 
> > > >> -- Alex

Reply via email to