Details
Description
Context
I tried to migrate a custom Karaf distribution from 4.2.8 to 4.3.3 (fileinstall version 3.6.4 -> 3.7.0). The distribution contains a blueprint (xml) file that is supposed to be handled by one of Karaf's custom ArtifactListener_s. This kind of deploment works for Karaf 4.2.8 but fails for 4.3.3.
Steps to Reproduce
On a vanilla Karaf 4.3.3
- place org.apache.karaf.features.cfg in etc directory (adds aries-blueprint to boot features)
- place client.xml in deploy directory (this is copied from examples/karaf-blueprint-example-client)
- do a clean start of karaf
- on Karaf shell, execute bundle:list | grep "client.xml"
Actual Results
No matching bundles are listed
Addendum: if a file in deploy is touched while Karaf is running, the blueprint gets deployed. This does not need to be client.xml itself, renaming deploy/README to deploy/README.txt also results in the blueprint getting deployed
Expected Results
karaf@root()> bundle:list | grep "client.xml" 70 | Installed | 80 | 0.0.0 | client.xml
The XML file from deploy directory should be listed. Note: The bundle cannot start since it is missing requirements
Cause
Karaf updated its dependency on Apache Felix File Install. That project has introduced a regression (FELIX-6490, which I also reported) that breaks the hot deployment for files that require custom handlers (like blueprint)
Attachments
Attachments
Issue Links
- is blocked by
-
FELIX-6490 Files that cannot be deployed due to a missing handler are not processed again
- Resolved
-
KARAF-7315 Upgrade to Felix FileInstall 3.7.4
- Resolved