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é <[email protected]>:
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é <[email protected]>:
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é
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com
--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com
--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com