You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by Jason Dillon <ja...@planet57.com> on 2007/01/17 23:31:42 UTC

Re: svn commit: r497213 - /geronimo/server/trunk/assemblies/pom.xml

I think we may want to setup some profiles to disable the minimal  
assemblies by default, or at least allow the user to configure which  
assemblies to build.

For most of my testing I only care about the jetty assembly, so  
building the rest of them just slows things down.

--jason


On Jan 17, 2007, at 2:29 PM, jdillon@apache.org wrote:

> Author: jdillon
> Date: Wed Jan 17 14:29:18 2007
> New Revision: 497213
>
> URL: http://svn.apache.org/viewvc?view=rev&rev=497213
> Log:
> Build javaee assemblies first, leave minimal muck for afterwards  
> (so we can stop after one javaee assembly has been built)
>
> Modified:
>     geronimo/server/trunk/assemblies/pom.xml
>
> Modified: geronimo/server/trunk/assemblies/pom.xml
> URL: http://svn.apache.org/viewvc/geronimo/server/trunk/assemblies/ 
> pom.xml?view=diff&rev=497213&r1=497212&r2=497213
> ====================================================================== 
> ========
> --- geronimo/server/trunk/assemblies/pom.xml (original)
> +++ geronimo/server/trunk/assemblies/pom.xml Wed Jan 17 14:29:18 2007
> @@ -70,11 +70,11 @@
>      <modules>
>          <module>geronimo-boilerplate-minimal</module>
>          <module>geronimo-boilerplate-jee5</module>
> +        <module>geronimo-jetty6-jee5</module>
> +        <module>geronimo-tomcat6-jee5</module>
>          <module>geronimo-framework</module>
>          <module>geronimo-jetty6-minimal</module>
> -        <module>geronimo-jetty6-jee5</module>
>          <module>geronimo-tomcat6-minimal</module>
> -        <module>geronimo-tomcat6-jee5</module>
>      </modules>
>
>  </project>
>
>


Re: svn commit: r497213 - /geronimo/server/trunk/assemblies/pom.xml

Posted by Donald Woods <dr...@yahoo.com>.
Yep, maybe making everything a plug-in will save the day and move it to 
being an install time problem... :-)

-Donald

Jason Dillon wrote:
> On Jan 17, 2007, at 7:15 PM, Donald Woods wrote:
>> I'm afraid this is going to open a bag of worms....
>> There are a group of people only interested in Jetty, but another only 
>> interested in Tomcat (like myself).  What happens when we come to the 
>> decision of cxf vs. axis2?  Do we create 8 different profile options 
>> to build only the assembly you want?
> 
> Personally... I don't really care if its Jetty or Tomcat... CXF or 
> Axis2... OpenJPA or Cayenne.  What I do care about is having one server 
> which everyone is working off of, adding features to and fixing bugs 
> on.  I think we are asking for huge troubles by supporting all of these 
> configuration permutations.  Its bad enough with just the Jetty and 
> Tomcat flavors that we have today.  These 2 assemblies already behave 
> slightly differently :-(
> 
> Anyways, it takes about 6 minutes on a good day to rebuild all of the 
> assemblies, which will spin for ~2 minutes building the other javaee 
> assembly and about another 2 minutes building the framework and minimal 
> assemblies.
> 
> If/when we have to support 8 javaee assemblies, then that will be ~14 
> minutes waiting for the javaee assemblies which are not going to be used 
> to build.  I'm not even counting the time to build configs for each of 
> these variations, but chances are that will also significantly increase 
> the time to build the project.
> 
> I believe we need to do something about this now, so that it does not 
> start to take a few hours to build the server.
> 
> I really would like to see the community pick *one* implementation of a 
> component, and all other components are not included by default.  
> Perhaps my opinion on this might change if we did not need to add so 
> much build support to integrate these components, but right now the 
> build spends way too much time building configs and install configs to 
> configure an assembly with a specific set of components.  If it was 
> simply copying a jar and and xml file into a single server assembly, 
> then I think it might be feasible to support all of these 
> configurations, but right now that is not how it works.
> 
> 
>>   How do we ensure that Tomcat only developers don't break the builds 
>> for Jetty only developers, unless we always build all of the assemblies???
> 
> Even if the assemblies are enabled to build that does not ensure that 
> the result will actually be functional.  Tomcat-only developers could 
> easily change something which could cause a Jetty server to break, that 
> may not be caught during the build.
> 
>  * * *
> 
> All of these component combinations are gonna kill us...
> 
> :-(
> 
> --jason

Re: svn commit: r497213 - /geronimo/server/trunk/assemblies/pom.xml

Posted by Jason Dillon <ja...@planet57.com>.
On Jan 17, 2007, at 7:15 PM, Donald Woods wrote:
> I'm afraid this is going to open a bag of worms....
> There are a group of people only interested in Jetty, but another  
> only interested in Tomcat (like myself).  What happens when we come  
> to the decision of cxf vs. axis2?  Do we create 8 different profile  
> options to build only the assembly you want?

Personally... I don't really care if its Jetty or Tomcat... CXF or  
Axis2... OpenJPA or Cayenne.  What I do care about is having one  
server which everyone is working off of, adding features to and  
fixing bugs on.  I think we are asking for huge troubles by  
supporting all of these configuration permutations.  Its bad enough  
with just the Jetty and Tomcat flavors that we have today.  These 2  
assemblies already behave slightly differently :-(

Anyways, it takes about 6 minutes on a good day to rebuild all of the  
assemblies, which will spin for ~2 minutes building the other javaee  
assembly and about another 2 minutes building the framework and  
minimal assemblies.

If/when we have to support 8 javaee assemblies, then that will be ~14  
minutes waiting for the javaee assemblies which are not going to be  
used to build.  I'm not even counting the time to build configs for  
each of these variations, but chances are that will also  
significantly increase the time to build the project.

I believe we need to do something about this now, so that it does not  
start to take a few hours to build the server.

I really would like to see the community pick *one* implementation of  
a component, and all other components are not included by default.   
Perhaps my opinion on this might change if we did not need to add so  
much build support to integrate these components, but right now the  
build spends way too much time building configs and install configs  
to configure an assembly with a specific set of components.  If it  
was simply copying a jar and and xml file into a single server  
assembly, then I think it might be feasible to support all of these  
configurations, but right now that is not how it works.


>   How do we ensure that Tomcat only developers don't break the  
> builds for Jetty only developers, unless we always build all of the  
> assemblies???

Even if the assemblies are enabled to build that does not ensure that  
the result will actually be functional.  Tomcat-only developers could  
easily change something which could cause a Jetty server to break,  
that may not be caught during the build.

  * * *

All of these component combinations are gonna kill us...

:-(

--jason

Re: svn commit: r497213 - /geronimo/server/trunk/assemblies/pom.xml

Posted by Donald Woods <dr...@yahoo.com>.
I'm afraid this is going to open a bag of worms....
There are a group of people only interested in Jetty, but another only 
interested in Tomcat (like myself).  What happens when we come to the 
decision of cxf vs. axis2?  Do we create 8 different profile options to 
build only the assembly you want?  How do we ensure that Tomcat only 
developers don't break the builds for Jetty only developers, unless we 
always build all of the assemblies???



-Donald

Jason Dillon wrote:
> I think we may want to setup some profiles to disable the minimal 
> assemblies by default, or at least allow the user to configure which 
> assemblies to build.
> 
> For most of my testing I only care about the jetty assembly, so building 
> the rest of them just slows things down.
> 
> --jason
> 
> 
> On Jan 17, 2007, at 2:29 PM, jdillon@apache.org wrote:
> 
>> Author: jdillon
>> Date: Wed Jan 17 14:29:18 2007
>> New Revision: 497213
>>
>> URL: http://svn.apache.org/viewvc?view=rev&rev=497213
>> Log:
>> Build javaee assemblies first, leave minimal muck for afterwards (so 
>> we can stop after one javaee assembly has been built)
>>
>> Modified:
>>     geronimo/server/trunk/assemblies/pom.xml
>>
>> Modified: geronimo/server/trunk/assemblies/pom.xml
>> URL: 
>> http://svn.apache.org/viewvc/geronimo/server/trunk/assemblies/pom.xml?view=diff&rev=497213&r1=497212&r2=497213 
>>
>> ============================================================================== 
>>
>> --- geronimo/server/trunk/assemblies/pom.xml (original)
>> +++ geronimo/server/trunk/assemblies/pom.xml Wed Jan 17 14:29:18 2007
>> @@ -70,11 +70,11 @@
>>      <modules>
>>          <module>geronimo-boilerplate-minimal</module>
>>          <module>geronimo-boilerplate-jee5</module>
>> +        <module>geronimo-jetty6-jee5</module>
>> +        <module>geronimo-tomcat6-jee5</module>
>>          <module>geronimo-framework</module>
>>          <module>geronimo-jetty6-minimal</module>
>> -        <module>geronimo-jetty6-jee5</module>
>>          <module>geronimo-tomcat6-minimal</module>
>> -        <module>geronimo-tomcat6-jee5</module>
>>      </modules>
>>
>>  </project>
>>
>>
> 
> 
> 

Re: svn commit: r497213 - /geronimo/server/trunk/assemblies/pom.xml

Posted by Jason Dillon <ja...@planet57.com>.
On Jan 17, 2007, at 4:51 PM, Joe Bohn wrote:
> Jason Dillon wrote:
>> I think we may want to setup some profiles to disable the minimal  
>> assemblies by default, or at least allow the user to configure  
>> which assemblies to build.
>
> Since these are among our deliverables that users are dependent  
> upon I wouldn't want to remove them from the default build.  Could  
> we introduce an optional parameter to skip them (similar to  
> skipping tests/itests)?

Not really... mvn does not include profiles from lack of properties  
being set, but from existence of a property.  Mvn does have some  
crude support to enable a profile by default, but if you happen to  
flip any other profile on then the default won't get loaded.  So, for  
example if you enabled to -Devn=site which will enable the site- 
environment profile, then no default profiles will get loaded.

It is possible to hook up a custom plugin or script to run mvn  
executions for assemblies to allow better customization, but that  
gets messy.

--jason

Re: svn commit: r497213 - /geronimo/server/trunk/assemblies/pom.xml

Posted by Joe Bohn <jo...@earthlink.net>.

Jason Dillon wrote:
> I think we may want to setup some profiles to disable the minimal 
> assemblies by default, or at least allow the user to configure which 
> assemblies to build.

Since these are among our deliverables that users are dependent upon I 
wouldn't want to remove them from the default build.  Could we introduce 
an optional parameter to skip them (similar to skipping tests/itests)?

Joe