Details
-
Bug
-
Resolution: Not a Bug
-
Critical
-
None
-
fuse-7.10.1-GA
-
None
-
False
-
None
-
False
-
%
-
Todo
Description
Karaf Maven Plugin karaf assembly behaviour has changed from Fuse 7.7 to 7.10 leading to missing boot features for certain use cases.
In Fuse 7.7, the plugin generated a UUID feature file for the boot state repos and features and stored that in: org.apache.karaf.features.cfg
featuresRepositories = file:${karaf.etc}/6458aac0-a97e-4dbb-9c24-a2d063006433.xml featuresBoot = 435e65d3-7a3d-46f6-9273-7926dde56dc2
In 7.10, it seems to not enter the above code path and instead adds the repo's and boot features directly into org.apache.karaf.features.cfg
featuresRepositories = \ mvn:io.fabric8.kubernetes/kubernetes-karaf/4.6.2.fuse-7_10_1-00006-redhat-00001/xml/features, \ mvn:org.jboss.fuse/fuse-karaf-framework/7.10.0.fuse-7_10_1-00008-redhat-00001/xml/features, \ mvn:org.apache.karaf.features/framework/4.2.12.fuse-7_10_1-00006-redhat-00001/xml/features featuresBoot = \ (wrap), \ artemis-amqp-client/2.16.0.redhat-00022, \ cxf-commands/3.3.6.fuse-7_10_1-00009-redhat-00001, \ fabric8-karaf-checks/7.10.0.fuse-7_10_1-00008-redhat-00001, \ log/4.2.12.fuse-7_10_1-00006-redhat-00001, \ pax-jdbc-oracle/1.5.1, \
This is the code that generated the UUID file
https://github.com/jboss-fuse/karaf/blob/4.2.x.redhat-7-x/profile/src/main/java/org/apache/karaf/profile/assembly/Builder.java#L1718 https://github.com/jboss-fuse/karaf/blob/4.2.x.redhat-7-x/profile/src/main/java/org/apache/karaf/profile/assembly/Builder.java#L1840
In7.10, its not going into the if block and more. In 7.7, it goes into the if and is writing the uuid xml feature file...
In 7.10... they're seemingly going into the else block and writing the boot repo's and feature directly into the cfg file...
https://github.com/jboss-fuse/karaf/blob/4.2.x.redhat-7-x/profile/src/main/java/org/apache/karaf/profile/assembly/Builder.java#L1871