karaf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jean-Baptiste Onofré ...@nanthrax.net>
Subject Re: [DISCUSS] Cave and Karaf 4
Date Tue, 05 May 2015 15:04:29 GMT
Awesome, thanks Guillaume !

I will update to merge some changes.

Thanks a lot !
Regards
JB

On 05/05/2015 04:59 PM, Guillaume Nodet wrote:
> I've pushed all the changes to Cave master branch.
>
> So cave requires Karaf 4, all the modules have been modified to align with
> Karaf 4 (no blueprint, new command api), the dependencies have been
> lightened a bit, the rest support has been moved to its own module, the
> features are now verified, and the maven-proxy module from Karaf 4 has been
> moved to Cave.
> I'll do a bit more testing for the cave integration with the karaf resolver
> to make sure everything works well.
>
> I think the next step would be to integrate maven support into cave a bit
> more.
> Right now, the repositories served by cave either use http:xxx urls when
> proxying, or relative uris when the artifacts are stored locally.
> However, the use of relative uris is not permitted by the spec, so I had to
> rewrite the repository on the fly to get rid of the relative uris and use
> the correct http:xxx uris so that artifacts can be served correctly.  I
> think a better way would be to use mvn:xxx uris, so that all artifacts
> serving would be managed by the maven servlet.
>
> I'll try to experiment a bit more with that, but we could release a Cave
> 4.0 in this state, and a cave 4.1 at a later time with those enhancements.
>
>
>
> 2015-04-30 22:22 GMT+02:00 Jean-Baptiste Onofré <jb@nanthrax.net>:
>
>> Hi Guillaume,
>>
>> sorry I was offline yesterday and today due to family issue to address.
>>
>> I will take a look later tonight or tomorrow about your changes and push
>> my changes as well (REST, etc).
>>
>> No, I started to expose and manipulate a CaveRepository via a REST API but
>> it's not yet available (just preparation work).
>>
>> The HTTP layer is done by the WrapperServlet.
>>
>> I will complete the REST layer.
>>
>> Regards
>> JB
>>
>>
>> On 04/30/2015 09:57 PM, Guillaume Nodet wrote:
>>
>>> I've done most of the work already.
>>> See https://github.com/gnodet/karaf-cave/tree/KARAF-3712
>>> I'm only missing a small loop to look up the resources in
>>> CaveRepsoitoryServiceImpl#getResourceByUri().  I'll implement next week...
>>>
>>> However, there's one thing I don't understand.
>>> The CaveRepositoryService is exposed through jaxrs using CXF, but I can't
>>> find the address it's bound to.
>>> Is it actually accessible ?
>>>
>>> Guillaume
>>>
>>> 2015-04-30 21:52 GMT+02:00 Jean-Baptiste Onofré <jb@nanthrax.net>:
>>>
>>>   Hi,
>>>>
>>>> I will tackle that tomorrow.
>>>>
>>>> I keep you posted.
>>>>
>>>> Regards
>>>> JB
>>>>
>>>> On 04/29/2015 05:18 PM, Guillaume Nodet wrote:
>>>>
>>>>   I've raised a JIRA issue for the integration of Cave and Karaf 4 (see
>>>>> KARAF-3712).
>>>>>
>>>>> I have the following things in mind to integrate Cave into Karaf 4.
>>>>>
>>>>> When I mean integrating, I mean two things :
>>>>>
>>>>>       - ability to to use osgi repository from cave inside the karaf
>>>>> feature
>>>>>       resolution process (karaf 4 already support external osgi
>>>>> repositories so
>>>>>       we're simply missing a compliant repository server)
>>>>>       - ability to use cave as a maven repository and not only an osgi
>>>>>       repository (i.e. serve other kind of artifacts with a real maven
>>>>> layout)
>>>>>
>>>>>
>>>>> It would require the following things :
>>>>>
>>>>>       - upgrade to CXF 3.1
>>>>>       - us the spec'ed xml instead of the custom bundle repository xml
>>>>> format
>>>>>       (both internally and for external access)
>>>>>       - provide support for accessing repositories as json based
>>>>> repository
>>>>> as
>>>>>       read by karaf 4 (see JsonRepository class)
>>>>>       - support for gzip encoding of the repository in the servlet
>>>>>       (repositories do compress very well)
>>>>>       - move the maven proxy support from karaf 4 to cave
>>>>>
>>>>> I think a good addition would be to provide each repository managed by
>>>>> cave
>>>>> as a Repository object instead of relying on the bundle repository
>>>>> Repository object which is an aggregation.
>>>>>
>>>>> I would also get rid of OBR since this is deprecated.
>>>>>
>>>>> We may also want to get rid of the felix bundle repository completely
>>>>> and
>>>>> rely on the felix repository and karat-features-core bundle internal
>>>>> classes.
>>>>>
>>>>> Another good improvement for 4.0 would be to make sure the repositories
>>>>> can
>>>>> be used with cellar using DOSGi.  Using a simple servlet instead of a
>>>>> full
>>>>> war for the cave http servlet would trim down the dependencies a bit
too
>>>>> with no real loss imho.
>>>>>
>>>>> I'm wiling to experiment a bit with these ideas ...
>>>>>
>>>>> Thoughts ?
>>>>>
>>>>>
>>>>>   --
>>>> Jean-Baptiste Onofré
>>>> jbonofre@apache.org
>>>> http://blog.nanthrax.net
>>>> Talend - http://www.talend.com
>>>>
>>>>
>>>
>> --
>> Jean-Baptiste Onofré
>> jbonofre@apache.org
>> http://blog.nanthrax.net
>> Talend - http://www.talend.com
>>
>

-- 
Jean-Baptiste Onofré
jbonofre@apache.org
http://blog.nanthrax.net
Talend - http://www.talend.com

Mime
View raw message