[hibernate-dev] [OGM] Build time
Emmanuel Bernard
emmanuel at hibernate.org
Thu Nov 28 05:18:24 EST 2013
On Thu 2013-11-28 10:45, Gunnar Morling wrote:
> 2013/11/28 Emmanuel Bernard <emmanuel at hibernate.org>
> > a. Provide a -Dminimal flag to run in case 1.
> >
>
> You still would have to specify the backend you want to build, right? How
> would such flag be used then?
Not that would be to build all backends. That's use case #2.
>
> That's how I cover that case:
>
> mvn clean install -pl {couchdb|mongodb|...}
>
> This is fast as there is no docs, dist etc. included in these modules. To
> optionally also build core I do:
>
> mvn clean install -pl {couchdb|mongodb|...} -am (for _a_lso _m_aking
> dependencies)
>
> Would a custom flag improve upon this?
This does cover case #1.
My personal problem is 1. I can't remember that it's pl / am. And when I
do, I can't remember what pl does vs am.
I guess if maven had some autocompletion logic I might be less
concerned.
>
>
> b. Provide a -Dcomplete flag to run in case 3.
> >
>
> We might do that.
>
> One shortcoming in Maven is though that one - afaik - can't enable profiles
> using several properties. So having -Dcomplete (or -DskipAllExpensive if we
> want to default the other way around) would mean that we can't skip single
> things specifically (e.g. only skip docs). If we're ok with loosing that
> granular level of control we can try that.
Ah, yes that sucks.
>
>
> > c. Provide a script to do 2. I suspect case 2. can only be done with a
> > custom script or by moving to Gradle. For various reasons, I don't want
> > us to move to Gradle at this stage.
> >
>
> How about
>
> d. Use an alias for all skip options:
>
> export mvnFast = "mvn -DskipITs -DskipDocs -DskipDistro"
>
> This gives a quick build in one command and still allows for fine
> granularity if needed.
>
That's ok for case #2. But not #1.
>
> > Everyone OK with doing a. and b.
> > The problem with c. is that making a cross platform script requires time
> > but we could make it work for us at least.
> >
> > Note that this leaves open what 'mvn clean install' should do.
> >
>
> To me it should include everything by default (hence I'd prefer
> -DskipAllExpensive over -Dcomplete) but if a majority of you guys prefer
> another behavior I'd adapt.
>
The concern I have is someone cloning OGM and getting a BUILD FAILED in
his face. That's not even mentioning the 2.3km of logs to dig into to
figure out why.
I guess I'll have to go for a custom script...
More information about the hibernate-dev
mailing list