I didn't see where a smx assembly was being built so I spent a few minutes on 
plugin documentation.  I think running mvn site in tooling/karaf-maven-plugin 
produces a reasonably informative result.

Are we publishing maven generated sites anywhere?  I'm not always sure about 
regular projects' maven sites but the generated plugin documentation is usually 
pretty useful and I think that people expect to find it.

thanks
david jencks

On Apr 9, 2011, at 1:47 PM, Achim Nierbeck wrote:

> my comments in-line :)
> 
> 
>> I think I left out a step :-) and I'm not sure how people are currently 
>> packaging the extra files needed for a custom server.
> 
> the way I used to do it was to configure a maven project for assembly
> and I configured all my extra bundles as dependency in this
> project, using the assembly plug-in for maven. First step was to extract
> the standard distro of Karaf, add some extra bundles
> add some extra config files, changed some config files skipped some
> config files of the original assembly.
> 
>> I'm thinking that you would set up a kar project with all the extra files, 
>> configuration, etc as well as listing or including the bundles, so you can 
>> install e.g. servicemix on any karaf instance as a kar, and then also set up 
>> a karaf-assembly project that produces a custom distribution based on that 
>> kar as well as everything else you want in the server.
> 
> This is a nice idea, and this way I probably don't need to edit the
> startup.properties anymore. I kind of like that.
> As I already stated we need some very good documentation to get our
> users into this boat :)
> 
>> The framework and full kars I added to assemblies/features combined with the 
>> new assemblies are one example of this technique, but maybe I should try it 
>> out on e.g. servicemix also as an example.  Is it clear where the servicemix 
>> assembly is?
> 
> For this you have to ask JB, he did the last release for ServiceMix.
> 
>> thanks
>> david jencks
>> 
>> On Apr 9, 2011, at 11:41 AM, Achim Nierbeck wrote:
>> 
>>> Hi David,
>>> 
>>> 
>>>> I assume you are talking about the instructions for custom distributions 
>>>> here:
>>>> 
>>>> http://karaf.apache.org/manual/2.2.0/developers-guide/custom-distribution.html
>>>> 
>>> yes, exactly
>>> 
>>>> The process described here is hideously complex compared to what I'm 
>>>> proposing.  To keep it available we need to keep the add-features-to-repo 
>>>> mojo.  If, after comparing equivalent old and new style karaf assembly 
>>>> projects, someone wants to keep it, fine.
>>> well, it might be complex but most persons I know a very aware of how to
>>> use the assembly plugin of maven on building a
>>> nice little distribution :)
>>> 
>>>> Conceptually the main difference I see between old and new styles is that 
>>>> the old style relies on unpacking an existing distro whereas the new style 
>>>> currently asks you to copy the list of features and kars that were 
>>>> assembled into the existing distro.  I think I can set up an "uber 
>>>> feature" for each distro so there's only one feature going in, so in 
>>>> either style there would be exactly one artifact involved, but it might be 
>>>> a good idea to add an "unpack existing distro" mojo so the karaf-assembly 
>>>> packaging can also unpack something for you.  In this case I think the new 
>>>> style would be equivalent to the old style except you'd list the features 
>>>> to add as maven dependencies instead of configuring them in the k-m-p 
>>>> plugin configuration, and you' leave out 99% of the configuration.
>>>> 
>>>> Have you tried setting up a project to do a new-style assembly?  
>>> No I didn't yet, but will give it a try. I just realized this big change.
>>> 
>>> 
>>> regards, Achim
>>> 
>>>> thanks
>>>> david jencks
>>>> 
>>>> 
>>>> On Apr 9, 2011, at 10:03 AM, Achim Nierbeck wrote:
>>>> 
>>>>> Hi all my comments in-line
>>>>> 
>>>>> regards, Achim
>>>>> 
>>>>>> Karaf is complete atomic and standalone OSGi container.
>>>>>> 
>>>>>> It should run by itself (and it's still the case).
>>>>>> 
>>>>> full ack, for just using camel you don't need anything else. This just
>>>>> as a quick description on how I am using Karaf very often.
>>>>> 
>>>>> 
>>>>>> I think it's more logic for the projects to be build on top. Anyway,
>>>>>> I'm not against this new change as it could get life easy in the project.
>>>>>> David, did you launch a thread in the past on this mailing list, or
>>>>>> updated a wiki page describing this new philosophy ? Sorry if the
>>>>>> question is stupid, maybe I missed some messages, but I don't remember
>>>>>> lot of discussion on these changes.
>>>>>> 
>>>>> I did see some mail-threads touching parts of this, but somehow I was
>>>>> missing the big picture beforehand.
>>>>> IMHO for me this move was quite fast and a better discussion could have
>>>>> been helpful.
>>>>> 
>>>>> 
>>>>>> Let me make some try to have a better understanding. Anyway, I didn't
>>>>>> see any change on the manual around the "Karaf Custom Distribution"
>>>>>> section. It should be introduce and described in the manual.
>>>>>> 
>>>>> We surely need some very good documentation on this move, because we
>>>>> already have a description for how to build a custom distributions and
>>>>> people are already using it to make their own custom distribution. I
>>>>> used to do this at my former company
>>>>> and I'm sure the guys doing it now will get kind of upset if they have
>>>>> to change a lot on how to make a custom distribution.
>>>>> Just my 2 cent.
>>>>> 
>>>>>> I will do that regarding my tests on ServiceMix.
>>>>>> 
>>>>>> Thanks
>>>>>> Regards
>>>>>> JB
>>>>>> 
>>>>>> On 04/08/2011 09:15 PM, David Jencks wrote:
>>>>>>> I'd like to suggest that it would be more appropriate for other
>>>>>>> projects such as servicemix to have one or more karaf-assembly
>>>>>>> packaging projects similar to the apache-karaf-framework or
>>>>>>> apache-karaf-full assemblies but including exactly the content
>>>>>>> wanted, rather than starting with a distributed karaf server and
>>>>>>> modifying it.  That was more or less the point of introcuding the
>>>>>>> karaf-assembly packaging.
>>>>>>> 
>>>>>>> This is a pretty dramatic change in philosophy of what karaf is and
>>>>>>> how to use it, but I think it is easier to use and a lot more
>>>>>>> flexible.  I think of karaf more as a way to construct servers rather
>>>>>>> than as a particular set of content in a server.
>>>>>>> 
>>>>>>> thanks
>>>>>>> david jencks
>>>>>>> 
>>>>>>> On Apr 8, 2011, at 10:55 AM, Jean-Baptiste Onofré wrote:
>>>>>>> 
>>>>>>>> Before, I will check the impact on some other projects, especially
>>>>>>>> around the groupId/artifactId used.
>>>>>>>> 
>>>>>>>> We made a mistake by changing the groupId/artifactId of features, I
>>>>>>>> don't wanna to have the same issue with the distribution assemblies.
>>>>>>>> Projects like ServiceMix use the Karaf distribution in their own
>>>>>>>> assembly. At least, we need to document the new Mojo, the new
>>>>>>>> distro, etc.
>>>>>>>> 
>>>>>>>> I'm gonna make some tests with ServiceMix and I will keep you posted.
>>>>>>>> 
>>>>>>>> Regards
>>>>>>>> JB
>>>>>>>> 
>>>>>>>> On 04/08/2011 07:45 PM, David Jencks wrote:
>>>>>>>>> I'd like to suggest that we remove the old assemblies/apache-karaf
>>>>>>>>> and use instead the assemblies/apache-karaf-minimal and
>>>>>>>>> apache-karaf-full assemblies constructed using the new mojos.  I
>>>>>>>>> think we can also remove a lot of mojos from the karaf-maven-plugin.
>>>>>>>>> 
>>>>>>>>> With the exception of some configuration files, legal files, the
>>>>>>>>> demo files, and the inclusion of o.a.k.shell.ssh in the old minimal
>>>>>>>>> assembly by error, the contents of the corresponding new and old
>>>>>>>>> assemblies are the same.  A few more bundles start in the newer
>>>>>>>>> servers but I think these are errors similar to the inclusion of
>>>>>>>>> ssh in the minimal assemblies.  It would be great if someone more
>>>>>>>>> familiar with karaf history than I would investigate the
>>>>>>>>> differences and advise about what to do.  Basically I assume that
>>>>>>>>> all the bundles in system should be started, so the choices are to
>>>>>>>>> remove the extra bundles from system or to decide that indeed their
>>>>>>>>> presence is correct.
>>>>>>>>> 
>>>>>>>>> I'm not sure what to do with the demos.  It's easy enough to write
>>>>>>>>> a kar file that will unpack the demo content so it will look just
>>>>>>>>> as it does today, but what's there strikes me as sort of horrible. 
>>>>>>>>> I don't really expect a server image to include maven projects that
>>>>>>>>> I can build to add functionality.  I think that it would be a lot
>>>>>>>>> more appropriate to have a customization maven archetype that will
>>>>>>>>> generate a full-featured customization project, and one or two demo
>>>>>>>>> features that can install prebuilt demo applications.
>>>>>>>>> 
>>>>>>>>> I'm thinking about how best to install legal files into assemblies
>>>>>>>>> and hope to have a suggestion in the next few days.
>>>>>>>>> 
>>>>>>>>> The current apache-karaf builds some kind of source distribution. 
>>>>>>>>> I haven't looked into exactly what it is but suggest that the
>>>>>>>>> source distros produced by the apache release profile are sufficient.
>>>>>>>>> 
>>>>>>>>> Related to this suggestion I think it would be great if some of the
>>>>>>>>> other projects that use karaf such as servicemix, activemq,
>>>>>>>>> directory (?) tried out the new packagings to build custom server
>>>>>>>>> assemblies.  I will try to write up some documentation and maven
>>>>>>>>> archetypes for this in the next few days.
>>>>>>>>> 
>>>>>>>>> thoughts?
>>>>>>>>> 
>>>>>>>>> thanks
>>>>>>>>> david jencks
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
> 

Reply via email to