davsclaus commented on pull request #5191:
URL: https://github.com/apache/camel/pull/5191#issuecomment-795294607


   I now had a little time to look at this (was busy with core optimizations)
   
   1)
   Overall I think we should make camel-karaf the home for Camel on OSGi. And 
we can do this by doing like we do for camel-spring-boot or camel-quarkus (or 
for the matter with camel-kafka-connector). And that is to have this project 
host the supported Camel components. 
   
   2)
   I would therefore suggest to use this PR as an experiment for starting this 
work.
   
   This can be done by:
   
   a) creating camel-azure-eventbus-osgi as an component in 
camel-karaf/components (or maybe better yet a new root folder name for these 
uber bundles, eg camel-karaf/bundles or camel-karaf/uber-components - or some 
other better name)
   b) do the uber jar thingy in the pom.xml of this new component
   c) release this component as part of camel-karaf with its own GAV 
(org.apache.camek.karaf/camel-azure-eventbus-osgi/3.9.0)
   d) add this component to the features.xml file so we can experiment with 
installing it in Karaf like you can do with all the "classic" components today
   e) and leave this core camel project as-is today
   
   3)
   Get a release out 3.9 with this experiment. For 1 or a few more components. 
eg maybe try the other azure components.
   
   4)
   Work on automating this more for the future. eg in camel-spring-boot there 
is maven tooling that generates the camel spring boot starter components. And 
to add a new component there is a shell script to run that calls this maven 
tool.
   
   5)
   The manual hand craft of the import,expert OSGi in the pom.xml - lets see if 
we can automate that. It would be to error prone / manual way to do this by 
hand for all 200+ components to use in OSGi.
   
   6)
   Also maybe instead of trying to make uber JARs in camel-karaf. Experiment 
with a new installer in Karaf that can take a plain JAR (eg camel-http) and 
inside this JAR you can find the maven pom.xml, and then load that, and use to 
compute the dependency set. And assemble an Uber JAR on-the-fly. 
   
   /Claus
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to