karaf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David Jencks <david_jen...@yahoo.com>
Subject Re: What to include in the default distribution? (Re: svn commit: r964414 - in /karaf/trunk: assembly/pom.xml assembly/src/main/descriptors/unix-bin.xml assembly/src/main/descriptors/windows-bin.xml pom.xml)
Date Fri, 16 Jul 2010 07:32:10 GMT
What I'd like is:

1. (most important) an easy way to assemble, as part of a build, a karaf server that includes
whatever features I specify.  The output artifact should be a zip or tar.gz that I can unpack
and run.
2. (less important) using (1), a server that can be used to install more features into itself.
 We can distribute this server.

Projects like activemq and geronimo can use (1) to assemble servers that start up with the
e.g. activemq broker running.  Activemq doesn't need to include feature support or anything
else it doesn't want.
Other projects can start with a pre-existing server and add stuff to it through a non-build
process.

Geronimo has something like (1) which I use continually in the geronimo build to assemble
mini-servers to test specific features.

thanks
david jencks

On Jul 16, 2010, at 12:08 AM, Guillaume Nodet wrote:

> I'd really like to keep the assembly minimal.  I've had some chat with
> Hiram Chirino recently about using Karaf for ActiveMQ and he goes the
> opposite way.  He does not want SSH, not features, not the admin
> stuff, just the bare minimum, so including the web console would not
> be a good thing in that case.
> In all cases, I think we should improve the ease for the user to
> repackage karaf with the wanted features, make more features, and
> maybe provide multiple distributions, one being even more minimal, and
> maybe a full one, but full is very difficult to define, because
> there's lot of things we could include.
> 
> On Fri, Jul 16, 2010 at 08:58, Charles Moulliard <cmoulliard@gmail.com> wrote:
>> You are right I have forgotten to include pax-web (which is well present in
>> system directory of servicemix) and jetty.
>> 
>> I can figure out why Spring and Spring-DM features are not part of our local
>> 'system' maven repo but for 'http', 'war' and 'webconsole' features', this
>> should be the case like 'obr', 'wrapper','ssh' and 'management. The
>> webconsole provides more added value for a client than 'obr' or even
>> 'wrapper'. The existing distinction (part of not part of system) is a little
>> bit trivial. This is my point of view.
>> 
>> Nevertheless, to avoid any ambiguity with the users, I propose that we
>> reorganize the features file of karaf by adding a comment explaining which
>> features/bundles are included in our local maven /system directory like
>> ('obr','ssh','wrapper','management') and which one not like spring,
>> spring-dm ?
>> 
>> For the future we should provide rules regarding to the bundles/features
>> which are part of system directory (idem for servicemix packaging where
>> pax-web is included ?
>> 
>> 
>> On Fri, Jul 16, 2010 at 8:37 AM, Guillaume Nodet <gnodet@gmail.com> wrote:
>> 
>>> I don't make any assumption.  I think you are making the assumption
>>> that users want to install the web console, which is currently an
>>> optional feature, hence, not included in the default distribution.
>>> What I don't understand is that we don't include the pax-web, jetty
>>> and core webconsole bundles, so I don't see the point in including
>>> those.
>>> 
>>> On Fri, Jul 16, 2010 at 08:29, Charles Moulliard <cmoulliard@gmail.com>
>>> wrote:
>>>> Hi Guillaume,
>>>> 
>>>> You take the assumption that the server where Karaf runs has an internet
>>>> connection + maven installed. For production environment this is not at
>>> all
>>>> the case. So, those jars are mandatory in the /system directory.
>>>> 
>>>> Kind regards,
>>>> 
>>>> Charles Moulliard
>>>> 
>>>> Senior Enterprise Architect (J2EE, .NET, SOA)
>>>> Apache Camel - ServiceMix Committer
>>>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>> Blog : http://cmoulliard.blogspot.com |  Twitter :
>>>> http://twitter.com/cmoulliard
>>>> Linkedin : http://www.linkedin.com/in/charlesmoulliard | Skype:
>>> cmoulliard
>>>> 
>>>> 
>>>> On Thu, Jul 15, 2010 at 8:40 PM, Guillaume Nodet <gnodet@gmail.com>
>>> wrote:
>>>> 
>>>>> I'm not really sure we should include those jars bt default.  They are
>>>>> dowlaloded when installing the features and those features are
>>>>> optional.
>>>>> 
>>>>> On Thursday, July 15, 2010,  <cmoulliard@apache.org> wrote:
>>>>>> Author: cmoulliard
>>>>>> Date: Thu Jul 15 13:15:12 2010
>>>>>> New Revision: 964414
>>>>>> 
>>>>>> URL: http://svn.apache.org/viewvc?rev=964414&view=rev
>>>>>> Log:
>>>>>> KARAF-120 : Add missing jars (used by karaf) in the system local
>>>>> repository
>>>>>> 
>>>>>> Modified:
>>>>>>     karaf/trunk/assembly/pom.xml
>>>>>>     karaf/trunk/assembly/src/main/descriptors/unix-bin.xml
>>>>>>     karaf/trunk/assembly/src/main/descriptors/windows-bin.xml
>>>>>>     karaf/trunk/pom.xml
>>>>>> 
>>>>>> Modified: karaf/trunk/assembly/pom.xml
>>>>>> URL:
>>>>> 
>>> http://svn.apache.org/viewvc/karaf/trunk/assembly/pom.xml?rev=964414&r1=964413&r2=964414&view=diff
>>>>>> 
>>>>> 
>>> ==============================================================================
>>>>>> --- karaf/trunk/assembly/pom.xml (original)
>>>>>> +++ karaf/trunk/assembly/pom.xml Thu Jul 15 13:15:12 2010
>>>>>> @@ -156,6 +156,22 @@
>>>>>>              <artifactId>org.apache.karaf.management</artifactId>
>>>>>>          </dependency>
>>>>>>          <dependency>
>>>>>> +            <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>  <artifactId>org.apache.karaf.webconsole.admin</artifactId>
>>>>>> +        </dependency>
>>>>>> +        <dependency>
>>>>>> +            <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>>>  <artifactId>org.apache.karaf.webconsole.branding</artifactId>
>>>>>> +        </dependency>
>>>>>> +        <dependency>
>>>>>> +            <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>>>  <artifactId>org.apache.karaf.webconsole.features</artifactId>
>>>>>> +        </dependency>
>>>>>> +        <dependency>
>>>>>> +            <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +            <artifactId>org.apache.karaf.webconsole.gogo</artifactId>
>>>>>> +        </dependency>
>>>>>> +        <dependency>
>>>>>>              <groupId>org.springframework.osgi</groupId>
>>>>>>              <artifactId>spring-osgi-extender</artifactId>
>>>>>>          </dependency>
>>>>>> @@ -216,6 +232,10 @@
>>>>>>              <artifactId>org.apache.felix.metatype</artifactId>
>>>>>>          </dependency>
>>>>>>          <dependency>
>>>>>> +            <groupId>org.apache.felix</groupId>
>>>>>> +            <artifactId>org.apache.felix.webconsole</artifactId>
>>>>>> +        </dependency>
>>>>>> +        <dependency>
>>>>>>              <groupId>org.ops4j.pax.logging</groupId>
>>>>>>              <artifactId>pax-logging-api</artifactId>
>>>>>>          </dependency>
>>>>>> 
>>>>>> Modified: karaf/trunk/assembly/src/main/descriptors/unix-bin.xml
>>>>>> URL:
>>>>> 
>>> http://svn.apache.org/viewvc/karaf/trunk/assembly/src/main/descriptors/unix-bin.xml?rev=964414&r1=964413&r2=964414&view=diff
>>>>>> 
>>>>> 
>>> ==============================================================================
>>>>>> --- karaf/trunk/assembly/src/main/descriptors/unix-bin.xml (original)
>>>>>> +++ karaf/trunk/assembly/src/main/descriptors/unix-bin.xml Thu Jul
15
>>>>> 13:15:12 2010
>>>>>> @@ -161,6 +161,24 @@
>>>>>>              <outputDirectory>/system</outputDirectory>
>>>>>>              <unpack>false</unpack>
>>>>>>              <useProjectArtifact>false</useProjectArtifact>
>>>>>> +
>>>>> 
>>>  <outputFileNameMapping>org/apache/felix/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>> +            <includes>
>>>>>> +
>>>>>  <include>org.apache.felix:org.apache.felix.metatype</include>
>>>>>> +            </includes>
>>>>>> +        </dependencySet>
>>>>>> +        <dependencySet>
>>>>>> +            <outputDirectory>/system</outputDirectory>
>>>>>> +            <unpack>false</unpack>
>>>>>> +            <useProjectArtifact>false</useProjectArtifact>
>>>>>> +
>>>>> 
>>>  <outputFileNameMapping>org/apache/felix/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>> +            <includes>
>>>>>> +
>>>>>  <include>org.apache.felix:org.apache.felix.webconsole</include>
>>>>>> +            </includes>
>>>>>> +        </dependencySet>
>>>>>> +        <dependencySet>
>>>>>> +            <outputDirectory>/system</outputDirectory>
>>>>>> +            <unpack>false</unpack>
>>>>>> +            <useProjectArtifact>false</useProjectArtifact>
>>>>>> 
>>>>> 
>>> <outputFileNameMapping>org/ops4j/pax/logging/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>>              <includes>
>>>>>> 
>>>  <include>org.ops4j.pax.logging:pax-logging-api</include>
>>>>>> @@ -190,6 +208,18 @@
>>>>>>              <outputDirectory>/system</outputDirectory>
>>>>>>              <unpack>false</unpack>
>>>>>>              <useProjectArtifact>false</useProjectArtifact>
>>>>>> +
>>>>> 
>>>  <outputFileNameMapping>org/apache/karaf/webconsole/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>> +            <includes>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.admin</include>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.branding</include>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.features</include>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.gogo</include>
>>>>>> +            </includes>
>>>>>> +        </dependencySet>
>>>>>> +        <dependencySet>
>>>>>> +            <outputDirectory>/system</outputDirectory>
>>>>>> +            <unpack>false</unpack>
>>>>>> +            <useProjectArtifact>false</useProjectArtifact>
>>>>>> 
>>>>> 
>>> <outputFileNameMapping>org/apache/karaf/features/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>>              <includes>
>>>>>> 
>>>>> 
>>> <include>org.apache.karaf.features:org.apache.karaf.features.core</include>
>>>>>> 
>>>>>> Modified: karaf/trunk/assembly/src/main/descriptors/windows-bin.xml
>>>>>> URL:
>>>>> 
>>> http://svn.apache.org/viewvc/karaf/trunk/assembly/src/main/descriptors/windows-bin.xml?rev=964414&r1=964413&r2=964414&view=diff
>>>>>> 
>>>>> 
>>> ==============================================================================
>>>>>> --- karaf/trunk/assembly/src/main/descriptors/windows-bin.xml
>>> (original)
>>>>>> +++ karaf/trunk/assembly/src/main/descriptors/windows-bin.xml Thu
Jul
>>> 15
>>>>> 13:15:12 2010
>>>>>> @@ -153,6 +153,24 @@
>>>>>>              <outputDirectory>/system</outputDirectory>
>>>>>>              <unpack>false</unpack>
>>>>>>              <useProjectArtifact>false</useProjectArtifact>
>>>>>> +
>>>>> 
>>>  <outputFileNameMapping>org/apache/felix/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>> +            <includes>
>>>>>> +
>>>>>  <include>org.apache.felix:org.apache.felix.metatype</include>
>>>>>> +            </includes>
>>>>>> +        </dependencySet>
>>>>>> +        <dependencySet>
>>>>>> +            <outputDirectory>/system</outputDirectory>
>>>>>> +            <unpack>false</unpack>
>>>>>> +            <useProjectArtifact>false</useProjectArtifact>
>>>>>> +
>>>>> 
>>>  <outputFileNameMapping>org/apache/felix/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>> +            <includes>
>>>>>> +
>>>>>  <include>org.apache.felix:org.apache.felix.webconsole</include>
>>>>>> +            </includes>
>>>>>> +        </dependencySet>
>>>>>> +        <dependencySet>
>>>>>> +            <outputDirectory>/system</outputDirectory>
>>>>>> +            <unpack>false</unpack>
>>>>>> +            <useProjectArtifact>false</useProjectArtifact>
>>>>>> 
>>>>> 
>>> <outputFileNameMapping>org/ops4j/pax/logging/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>>              <includes>
>>>>>> 
>>>  <include>org.ops4j.pax.logging:pax-logging-api</include>
>>>>>> @@ -182,6 +200,18 @@
>>>>>>              <outputDirectory>/system</outputDirectory>
>>>>>>              <unpack>false</unpack>
>>>>>>              <useProjectArtifact>false</useProjectArtifact>
>>>>>> +
>>>>> 
>>>  <outputFileNameMapping>org/apache/karaf/webconsole/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>> +            <includes>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.admin</include>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.branding</include>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.features</include>
>>>>>> +
>>>>> 
>>>  <include>org.apache.karaf.webconsole:org.apache.karaf.webconsole.gogo</include>
>>>>>> +            </includes>
>>>>>> +        </dependencySet>
>>>>>> +        <dependencySet>
>>>>>> +            <outputDirectory>/system</outputDirectory>
>>>>>> +            <unpack>false</unpack>
>>>>>> +            <useProjectArtifact>false</useProjectArtifact>
>>>>>> 
>>>>> 
>>> <outputFileNameMapping>org/apache/karaf/features/${artifact.artifactId}/${artifact.baseVersion}/${artifact.artifactId}-${artifact.baseVersion}${dashClassifier?}.${artifact.extension}</outputFileNameMapping>
>>>>>>              <includes>
>>>>>> 
>>>>> 
>>> <include>org.apache.karaf.features:org.apache.karaf.features.core</include>
>>>>>> 
>>>>>> Modified: karaf/trunk/pom.xml
>>>>>> URL:
>>>>> 
>>> http://svn.apache.org/viewvc/karaf/trunk/pom.xml?rev=964414&r1=964413&r2=964414&view=diff
>>>>>> 
>>>>> 
>>> ==============================================================================
>>>>>> --- karaf/trunk/pom.xml (original)
>>>>>> +++ karaf/trunk/pom.xml Thu Jul 15 13:15:12 2010
>>>>>> @@ -128,7 +128,7 @@
>>>>>>          <pax.exam.version>1.2.0</pax.exam.version>
>>>>>>          <pax.logging.version>1.5.2</pax.logging.version>
>>>>>>          <pax.runner.version>1.4.0</pax.runner.version>
>>>>>> -        <pax.url.version>1.1.3</pax.url.version>
>>>>>> +        <pax.url.version>1.1.2</pax.url.version>
>>>>>>          <pax.web.version>0.7.2</pax.web.version>
>>>>>>          <servlet.api.version>2.5</servlet.api.version>
>>>>>>          <spring.osgi.version>1.2.0</spring.osgi.version>
>>>>>> @@ -340,6 +340,26 @@
>>>>>>                  <version>${project.version}</version>
>>>>>>              </dependency>
>>>>>>              <dependency>
>>>>>> +                <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>>>  <artifactId>org.apache.karaf.webconsole.admin</artifactId>
>>>>>> +                <version>${project.version}</version>
>>>>>> +            </dependency>
>>>>>> +            <dependency>
>>>>>> +                <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>>>  <artifactId>org.apache.karaf.webconsole.branding</artifactId>
>>>>>> +                <version>${project.version}</version>
>>>>>> +            </dependency>
>>>>>> +            <dependency>
>>>>>> +                <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>>>  <artifactId>org.apache.karaf.webconsole.features</artifactId>
>>>>>> +                <version>${project.version}</version>
>>>>>> +            </dependency>
>>>>>> +            <dependency>
>>>>>> +                <groupId>org.apache.karaf.webconsole</groupId>
>>>>>> +
>>>>>  <artifactId>org.apache.karaf.webconsole.gogo</artifactId>
>>>>>> +                <version>${project.version}</version>
>>>>>> +            </dependency>
>>>>>> +            <dependency>
>>>>>>                  <groupId>org.apache.karaf.demos</groupId>
>>>>>>                  <artifactId>web</artifactId>
>>>>>>                  <version>${project.version}</version>
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>>>> --
>>>>> Cheers,
>>>>> Guillaume Nodet
>>>>> ------------------------
>>>>> Blog: http://gnodet.blogspot.com/
>>>>> ------------------------
>>>>> Open Source SOA
>>>>> http://fusesource.com
>>>>> 
>>>> 
>>> 
>>> 
>>> 
>>> --
>>> Cheers,
>>> Guillaume Nodet
>>> ------------------------
>>> Blog: http://gnodet.blogspot.com/
>>> ------------------------
>>> Open Source SOA
>>> http://fusesource.com
>>> 
>> 
> 
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Blog: http://gnodet.blogspot.com/
> ------------------------
> Open Source SOA
> http://fusesource.com


Mime
View raw message