śr., 29 sty 2020 o 08:42 Jean-Baptiste Onofré <j...@nanthrax.net> 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é <j...@nanthrax.net>
> 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é <j...@nanthrax.net>
> >> 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é<
> >> j...@nanthrax.net>
> >>>> 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é
> >>>> jbono...@apache.org
> >>>> http://blog.nanthrax.net
> >>>> Talend - http://www.talend.com
> >>>>
> >>>
> >>
> >> --
> >> Jean-Baptiste Onofré
> >> jbono...@apache.org
> >> http://blog.nanthrax.net
> >> Talend - http://www.talend.com
> >>
> >
>
> --
> Jean-Baptiste Onofré
> jbono...@apache.org
> http://blog.nanthrax.net
> Talend - http://www.talend.com
>

Reply via email to