karaf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrei Pozolotin <andrei.pozolo...@gmail.com>
Subject semantic features
Date Wed, 10 Apr 2013 04:49:11 GMT
    *Jean-Baptiste*

    FYI:

    in case karaf community is interested in semantic versioning for the
    karaf features, here is the idea:

    a combination of
    * aries version check plugin 0.1.0
    * maven bundle plugin 2.4.0 / bnd 2.0.0
    * RFC 197 OSGi Package and Type Annotations
    * fixed build of karaf plugin 3.0.0

    allows to use semantic versioning on both bundles and features all
    the way through the release pipeline.

    example:

    1) before (this is how karaf plugin processes version ranges now)
    https://github.com/barchart/barchart-version-tester/blob/master/one-zoo/doc/feature-01.xml

    2) after (this is how fixed karaf plugin does it)
    https://github.com/barchart/barchart-version-tester/blob/master/one-zoo/doc/feature-02.xml

    3) here is the punch line: the same application feature definition
    pom.xml
    https://github.com/barchart/barchart-version-tester/blob/master/one-zoo/pom.xml
    allows to transition from original set of bundles
    https://github.com/barchart/barchart-version-tester/blob/master/one-zoo/doc/feature-02.xml
    to the following updated set of bundles
    https://github.com/barchart/barchart-version-tester/blob/master/one-zoo/doc/feature-03.xml
    merely by evolving and releasing the underlying bundles, w/o
    changing the application aggregation pom.xml, or any interim
    dependency pom.xml
    thanks to automatic semantic version ranges resolution. appropriate
    final versions will be selected from version ranges and baked into
    the released feature.xml

    here is plugin patch
    https://github.com/barchart/barchart-maven-karaf-plugin/blob/master/patch/current.patch

    and complete documentation
    https://github.com/barchart/barchart-version-tester/wiki/Version-Policy

    Cheers,

    Andrei


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message