Hello

śr., 29 sty 2020 o 10:51 Jean-Baptiste Onofré <[email protected]> napisał(a):

> Good point ;)
>
> What about bundledesc ?
>

Naming is hard ;) manifest:// maybe?

I imagined also this scenario - if this manifest is an XML file (or JSON,
or whatever structured doc), it could contain MORE than one manifest. For
example a manifest for "tomcat" or for "spring framework" usually sharing
groupId. So a manifest could be e.g.,
bundledesc:mvn:org.apache.karaf.bundles/spring-framework/5.1.9.RELEASE?id=spring-core
(or similar) meaning that the bundle description should be fetched from
mvn:org.apache.karaf.bundles/spring-framework/5.1.9.RELEASE and in
particular - from "spring-core" section of this manifest.

But that's just an idea.

regards
Grzegorz Grzybek


> Regards
> JB
>
> On 29/01/2020 08:56, Grzegorz Grzybek wrote:
> > śr., 29 sty 2020 o 08:42 Jean-Baptiste Onofré <[email protected]>
> napisał(a):
> >
> >> The descriptor will a URL, so, they can be embedded in Karaf and then we
> >> can use file: URL, or available on Karaf website/Maven Central, and then
> >> we can use mvn or http URL as well.
> >>
> >> The bundle generator descriptor will contain the META and the overriding
> >> resources locations.
> >>
> >> For instance:
> >>
> >> my-bundle-descriptor-1.0.json
> >> {
> >> "base-location": "mvn:....jar",
> >> "Import-Package": "...",
> >> "Export-Package": "...",
> >> "resources":["mvn...jar","..."]
> >> }
> >>
> >> I already started a PoC like this while ago introducing a new URL
> >> handler "bundle:".
> >>
> >
> > This looks cool - exactly what I was thinking about - instead of relying
> on
> > (76 character wide) META-INF/MANIFEST.MF embedded in JAR (sometimes bad,
> > because sometimes authors of libraries do not know much about OSGi),
> have a
> > descriptor pointing to a location of (possibly not OSGi-aware) a library.
> >
> > But I'd use different protocol than "bundle:" which is used by Felix, I
> > think.
> >
> > regards
> > Grzegorz Grzybek
> >
> >
> >>
> >> Regards
> >> JB
> >>
> >> On 29/01/2020 08:32, Grzegorz Grzybek wrote:
> >>> Hi
> >>>
> >>> Good idea about not having it as part of featuresService
> >> (featuresProcessor
> >>> in Kara == Overrides v2). So getting closer to wrap: (wrap2: ?). Indeed
> >>> keeping some generic descriptors instead of building/voting/releasing
> SMX
> >>> bundles and generating actual bundles on the fly would be a good idea.
> >>>
> >>> Where those descriptors could be stored? In some Karaf subdirectory
> maybe
> >>> (etc/)? Currently I see 413 subdirectories of
> >>> github/apache/servicemix-bundles repo, All of those could be in single
> >> XML
> >>> file. If some SMX (and soon Karaf-Bundles?) bundles need some
> additional
> >>> resources, this generic (by default) generator descriptor could be
> >> tweaked
> >>> to load/shade/repackage additional resources...
> >>>
> >>> Anyway - I see it can be changed without huge effort.
> >>>
> >>> regards
> >>> Grzegorz Grzybek
> >>>
> >>> śr., 29 sty 2020 o 08:22 Jean-Baptiste Onofré <[email protected]>
> >> napisał(a):
> >>>
> >>>> Hi Greg,
> >>>>
> >>>> For bundles, as separate project, I have more the idea of
> "descriptor".
> >>>>
> >>>> It's something I proposed while ago.
> >>>>
> >>>> Instead of storing the concrete artifacts, I would rather store the
> >> meta.
> >>>> However, some bundles needs "resources" (like META-INF/foo or code).
> >>>>
> >>>> So, basically, I agree with a "dynamic" processing, however, I don't
> >>>> think it's good to have this in feature.
> >>>> I would rather add a "bundle generator" service, generic, that can
> >>>> easily be used outside Karaf.
> >>>> The bundle generator service can read artifact from Central or any
> >>>> repository, than, he reads META descriptor and overriding resources
> >>>> (from karaf-bundles repo for instances) and generates a concrete
> bundle
> >>>> on the fly.
> >>>> Big advantage is that it's easy to change the META/bundle on the fly.
> >>>>
> >>>> Thoughts ?
> >>>>
> >>>> Regards
> >>>> JB
> >>>>
> >>>> On 29/01/2020 07:59, Grzegorz Grzybek wrote:
> >>>>> Hello
> >>>>>
> >>>>> I can't tell much about SMX, but I fully agree about focusing on
> Karaf.
> >>>>>
> >>>>> About specs/bundles - good to have them as separate projects of Karaf
> >>>> (but
> >>>>> not in the same github/apache/karaf repo!), but for bundles I may
> have
> >>>>> different proposal... There's
> >>>>> https://issues.apache.org/jira/browse/KARAF-6200 for which I have
> >> local
> >>>>> implementation. I needed a mechanism to declaratively override
> bundle's
> >>>>> headers without touching the bundle. Similar to what we have with
> >> feature
> >>>>> override/blacklisting.
> >>>>>
> >>>>> KARAF-6200 reuses etc/org.apache.karaf.feature.xml file and adds
> >>>> something
> >>>>> like this:
> >>>>>
> >>>>> <bundleProcessing>
> >>>>>     <bundle location="mvn:org.eclipse.jetty*/*">
> >>>>>         <add header="Processed-By" value="Karaf Bundle Processor" />
> >>>>>         <clause header="Import-Package" name="javax.servlet"
> >>>>> value='javax.servlet;version="[3.1.0,5)"' />
> >>>>>         <clause header="Import-Package"
> name="javax.servlet.annotation"
> >>>>> value='javax.servlet.annotation;version="[3.1.0,5)"' />
> >>>>>         <clause header="Import-Package"
> name="javax.servlet.descriptor"
> >>>>> value='javax.servlet.descriptor;version="[3.1.0,5)"' />
> >>>>>         <clause header="Import-Package" name="javax.servlet.http"
> >>>>> value='javax.servlet.http;version="[3.1.0,5)"' />
> >>>>>     </bundle>
> >>>>> </bundleProcessing>
> >>>>>
> >>>>> which does exactly what it shows - for all bundles (installed with
> >>>>> features) with URI matching "mvn:org.eclipse.jetty*/*" we alter
> >> manifest
> >>>>> clauses. I didn't need this mechanism after all, because I could make
> >>>> Jetty
> >>>>> run with Servlet API 4 using "compatibility fragment bundle" that
> adds
> >>>>> extended exports to javax.servlet:javax.servlet-api.
> >>>>>
> >>>>> What I was thinking about (even back in 2009
> >>>>> <https://www.theserverside.com/discussions/thread/53803.html#305391
> >)
> >>>> is to
> >>>>> maybe extend the above mechanism to get rid of SMX bundles entirely?
> I
> >>>>> know, I know, there's "wrap:" protocol where you can specify headers
> in
> >>>> URI
> >>>>> itself, but it's not that easy to use. So instead of releasing SMX
> >>>> bundles,
> >>>>> we can just release the above alteration definitions (somehow).
> >>>>> I know there are 10000 things I didn't think about (like what to do
> if
> >>>> you
> >>>>> don't use Karaf features where featuresService can apply the above
> >>>>> manipulation), but maybe it's worth trying?
> >>>>>
> >>>>> regards
> >>>>> Grzegorz Grzybek
> >>>>>
> >>>>> wt., 28 sty 2020 o 15:30 Jean-Baptiste Onofré <[email protected]>
> >>>> napisał(a):
> >>>>>
> >>>>>> Hi Andrea,
> >>>>>>
> >>>>>> I fully agree with you.
> >>>>>>
> >>>>>> My proposal is basically:
> >>>>>>
> >>>>>> 1. Move SMX bundles and SMX specs as Karaf subproject
> >>>>>> 2. Create Karaf Integration distribution at Karaf (as we have
> standard
> >>>>>> and minimal distributions already)
> >>>>>> 3. Provide a migration guide for SMX users
> >>>>>> 4. Move ServiceMix project to attic
> >>>>>>
> >>>>>> Regards
> >>>>>> JB
> >>>>>>
> >>>>>> On 28/01/2020 15:27, Andrea Cosentino wrote:
> >>>>>>> +1 on each point.
> >>>>>>> I wouldn't do an 8.0.0 release, because we can't guarantee patch
> >>>>>> releases..
> >>>>>>> So I would go with attic and clearly states to use karaf
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> Inviato da Yahoo Mail su Android
> >>>>>>>
> >>>>>>>   Il mar, 28 gen, 2020 alle 15:01, Jean-Baptiste Onofré<
> >>>> [email protected]>
> >>>>>> ha scritto:   Hi guys,
> >>>>>>>
> >>>>>>> If the ServiceMix project is fairly active for SMX Bundles and
> Specs,
> >>>> we
> >>>>>>> clearly have a "slow pace" on distribution releases.
> >>>>>>>
> >>>>>>> Here, we have two approaches possible:
> >>>>>>>
> >>>>>>> 1. We clearly state on website and codebase that users should
> better
> >>>> use
> >>>>>>> Karaf and create their own custom distribution if needed.
> >>>>>>> 2. We begin a regular pace in distribution release.
> >>>>>>>
> >>>>>>> I think 1 makes more sense and it's worth to be mentioned in the
> SMX
> >>>>>>> distribution.
> >>>>>>>
> >>>>>>> Regarding 2, I would like to propose a ServiceMix 8.0.0 with:
> >>>>>>> - Update to Karaf 4.2.x
> >>>>>>> - Update to Camel 3.0.1
> >>>>>>> - Update on Activity
> >>>>>>> - Cleanup and improved SMX features
> >>>>>>> - Add itests in smx for coverage
> >>>>>>>
> >>>>>>> Another more "important" decision would be to retire ServiceMix to
> >>>> attic
> >>>>>>> and move SMX Bundles and Specs as Karaf subprojects (as we have
> Karaf
> >>>>>>> Decanter, Cave, Cellar, ...).
> >>>>>>>
> >>>>>>> I think it's fair to discuss about that as we don't see lot of
> >> activity
> >>>>>>> on ServiceMix distribution/releases.
> >>>>>>>
> >>>>>>> Thoughts ?
> >>>>>>>
> >>>>>>> Regards
> >>>>>>> JB
> >>>>>>>
> >>>>>>
> >>>>>> --
> >>>>>> 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
> >>
> >
>
> --
> Jean-Baptiste Onofré
> [email protected]
> http://blog.nanthrax.net
> Talend - http://www.talend.com
>

Reply via email to