Jérémie Brébec created KARAF-7739:
-------------------------------------

             Summary: FeatureReplacements randomly ignored
                 Key: KARAF-7739
                 URL: https://issues.apache.org/jira/browse/KARAF-7739
             Project: Karaf
          Issue Type: Bug
          Components: karaf
    Affects Versions: 4.3.6
            Reporter: Jérémie Brébec


I'd like to use the FeaturesProcessing "featureReplacements" for patching an 
old feature with a  new version of a dependency.

More specifically, I use an old version of Camel (v2) and I want to patch the 
camel-netty4 feature to use the latest version of netty (because of CVE).

For this, I use the features processing capability of Karaf, but it works 
randomly. Sometimes, the featureReplacements is ignored. (when the distribution 
is started for the first time). If I use "feature:info camel-netty4" in the 
CLI, I don't see the added bundles (and of course the feature doesn't install)

Note: I use th "bundle overrides" from years, and it works perfectly fine.

The definition I use:

{code}
<?xml version="1.0" encoding="UTF-8"?>
<featuresProcessing 
xmlns="http://karaf.apache.org/xmlns/features-processing/v1.0.0"; 
xmlns:f="http://karaf.apache.org/xmlns/features/v1.6.0";>

    <bundleReplacements>

                <!-- Netty -->
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-buffer/4.1.95.Final" 
originalUri="mvn:io.netty/netty-buffer/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-codec/4.1.95.Final" 
originalUri="mvn:io.netty/netty-codec/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-codec-http/4.1.95.Final" 
originalUri="mvn:io.netty/netty-codec-http/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-codec-socks/4.1.95.Final" 
originalUri="mvn:io.netty/netty-codec-socks/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-common/4.1.95.Final" 
originalUri="mvn:io.netty/netty-common/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-handler/4.1.95.Final" 
originalUri="mvn:io.netty/netty-handler/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-resolver/4.1.95.Final" 
originalUri="mvn:io.netty/netty-resolver/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-transport/4.1.95.Final" 
originalUri="mvn:io.netty/netty-transport/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-transport-classes-epoll/4.1.95.Final" 
originalUri="mvn:io.netty/netty-transport-classes-epoll/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-transport-native-epoll/4.1.95.Final" 
originalUri="mvn:io.netty/netty-transport-native-epoll/[4,5)"/>
                <bundle mode="maven" 
replacement="mvn:io.netty/netty-transport-native-unix-common/4.1.95.Final" 
originalUri="mvn:io.netty/netty-transport-native-unix-common/[4,5)"/>

    </bundleReplacements>

        <featureReplacements>
                <replacement mode="merge">
                        <feature name="camel-netty4" version="2.25.3">
                                <f:bundle 
dependency='true'>mvn:io.netty/netty-transport-classes-epoll/4.1.95.Final</f:bundle>
                                <f:bundle 
dependency='true'>mvn:io.netty/netty-tcnative-classes/2.0.61.Final</f:bundle>
                        </feature>
                </replacement>
        </featureReplacements>

</featuresProcessing>
{code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to