Hi Paul,

Sorry I didn't see your last email.

Do you mind to create a Jira with your features repo ? I will check
your features XML and try to reproduce.

Regards
JB

On Fri, Jul 12, 2024 at 5:59 PM Paul Spencer <[email protected]> wrote:
>
> I have done some more testing and realized the install attribute allowable 
> values are "auto" and "manual".
>
> The following behavior does not meet my expectations
> - Behavior of install-mixed-1.0.0.xml does not match documentation in section
>   "4.10.13 - Provisioning Deployer", 
> https://karaf.apache.org/manual/latest/#_deployer.  Specifically the 
> documentation
>   states the only features with install="auto" will be installed.  In the 
> case of install-mixed-1.0.0, the auto feature was not installed.
>
> - None of the features in install-manual-1.0.0.xml appear in feature:list
>
> - The configuration element for all features with install="auto" or no 
> install attribute created entries even though the feature is listed as 
> uninstalled.
>
> This replay is to primarily to document the results of my testing, which was 
> prompted by my attempt to build a features.xml to install the server or 
> client implementation.
>
> ***
> * tail:log output
> ***
> 10:50:13.609 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Installing 
> bundle install-manual / 1.0.0
> 10:50:13.615 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Installing 
> bundle install-none / 1.0.0
> 10:50:13.619 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Installing 
> bundle install-auto / 1.0.0
> 10:50:13.624 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Installing 
> bundle install-mixed / 1.0.0
> 10:50:13.651 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Started bundle: 
> feature:file:/Users/paul/Documents/apache-karaf-4.4.6/deploy/install-mixed-1.0.0.xml
> 10:50:13.657 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Started bundle: 
> feature:file:/Users/paul/Documents/apache-karaf-4.4.6/deploy/install-none-1.0.0.xml
> 10:50:13.660 INFO 
> [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/deploy] Started bundle: 
> feature:file:/Users/paul/Documents/apache-karaf-4.4.6/deploy/install-auto-1.0.0.xml
> 10:50:13.692 INFO [activator-1-thread-1] Registering commands for bundle 
> org.apache.karaf.shell.ssh/4.4.6
> 10:50:13.704 INFO [activator-1-thread-1] No detected/configured 
> IoServiceFactoryFactory; using Nio2ServiceFactoryFactory
> 10:50:13.835 INFO [features-3-thread-1] No deployment change.
> 10:50:13.843 INFO [features-3-thread-1] Done.
> 10:50:13.947 INFO [features-3-thread-1] No deployment change.
> 10:50:13.953 INFO [features-3-thread-1] Done.
> 10:50:14.058 INFO [features-3-thread-1] No deployment change.
> 10:50:14.064 INFO [features-3-thread-1] Done.
> 10:50:22.650 INFO [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/etc] 
> Updating configuration {case~install-none} from 
> /Users/paul/Documents/apache-karaf-4.4.6/etc/case-install-none.cfg
> 10:50:22.652 INFO [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/etc] 
> Updating configuration {case~install-mixed} from 
> /Users/paul/Documents/apache-karaf-4.4.6/etc/case-install-mixed.cfg
> 10:50:22.654 INFO [fileinstall-/Users/paul/Documents/apache-karaf-4.4.6/etc] 
> Updating configuration {case~install-auto} from 
> /Users/paul/Documents/apache-karaf-4.4.6/etc/case-install-auto.cfg
> 10:51:21.253 INFO [CM Configuration Updater (Update: 
> pid=org.ops4j.pax.logging)] Sending Event Admin notification (configuration 
> successful) to org/ops4j/pax/logging/Configuration
> ^C~                                                                           
>                                                                               
>                                                                               
>              karaf@root()>
> feature:list | grep case | sort
> case-install-auto-bar             │ 1.0.0            │ x        │ Started     
> │ install-auto-1.0.0                │
> case-install-auto-foo             │ 1.0.0            │ x        │ Started     
> │ install-auto-1.0.0                │
> case-install-mixed-auto           │ 1.0.0            │          │ Uninstalled 
> │ install-mixed-1.0.0               │
> case-install-mixed-manual         │ 1.0.0            │          │ Uninstalled 
> │ install-mixed-1.0.0               │
> case-install-mixed-none           │ 1.0.0            │          │ Uninstalled 
> │ install-mixed-1.0.0               │
> case-install-none-bar             │ 1.0.0            │          │ Uninstalled 
> │ install-none-1.0.0                │
> case-install-none-foo             │ 1.0.0            │          │ Uninstalled 
> │ install-none-1.0.0                │
> karaf@root()> list
> START LEVEL 100 , List Threshold: 50
> ID │ State  │ Lvl │ Version │ Name
> ───┼────────┼─────┼─────────┼─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
> 33 │ Active │  80 │ 4.4.6   │ Apache Karaf :: OSGi Services :: Event
> 53 │ Active │  80 │ 1.0.0   │ install-manual
> 54 │ Active │  80 │ 1.0.0   │ install-none
> 55 │ Active │  80 │ 1.0.0   │ install-auto
> 56 │ Active │  80 │ 1.0.0   │ install-mixed
> karaf@root()>
>
> ***
> * install-auto-1.0.0.xml
> ***
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0"; 
> name="install-auto-1.0.0">
>    <feature name="case-install-auto-foo" version="1.0.0" install="auto">
>      <config name="case-install-auto" append="true">
>           fooAutoInstalled = 1.0.0
>      </config>
>    </feature>
>    <feature name="case-install-auto-bar" version="1.0.0" install="auto">
>      <config name="case-install-auto" append="true">
>           barAutoInstalled = 1.0.0
>      </config>
>    </feature>
> </features>
>
> ***
> * install-manual-1.0.0.xml
> ***
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0"; 
> name="install-manual-1.0.0">
>    <feature name="case-install-manual-foo" version="1.0.0" install="manual">
>      <config name="case-install-manual" append="true">
>           fooManualInstalled = 1.0.0
>      </config>
>    </feature>
>    <feature name="case-install-manual-bar" version="1.0.0" install="manual">
>      <config name="case-install-manual" append="true">
>           barManualInstalled = 1.0.0
>      </config>
>    </feature>
> </features>
>
> ***
> * install-mixed-1.0.0.xml
> ***
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0"; 
> name="install-mixed-1.0.0">
>    <feature name="case-install-mixed-auto" version="1.0.0" install="auto">
>      <config name="case-install-mixed" append="true">
>           fooAutoInstalled = 1.0.0
>      </config>
>    </feature>
>    <feature name="case-install-mixed-manual" version="1.0.0" install="manual">
>      <config name="case-install-mixed" append="true">
>           barManualInstalled = 1.0.0
>      </config>
>    </feature>
>    <feature name="case-install-mixed-none" version="1.0.0">
>      <config name="case-install-mixed" append="true">
>           foobarNoneInstalled = 1.0.0
>      </config>
>    </feature>
> </features>
>
> ***
> * install-none-1.0.0.xml
> ***
> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0"; 
> name="install-none-1.0.0">
>    <feature name="case-install-none-foo" version="1.0.0">
>      <config name="case-install-none" append="true">
>           fooNoneInstalled = 1.0.0
>      </config>
>    </feature>
>    <feature name="case-install-none-bar" version="1.0.0">
>      <config name="case-install-none" append="true">
>           barNoneInstalled = 1.0.0
>      </config>
>    </feature>
> </features>
>
> ***
> * case-install-auto.cfg
> ***
> barAutoInstalled = 1.0.0
> org.apache.karaf.features.configKey = case-install-auto
> felix.fileinstall.filename = 
> file:/Users/paul/Documents/apache-karaf-4.4.6/etc/case-install-auto.cfg
> fooAutoInstalled = 1.0.0
>
>
> ***
> * case-install-mixed.cfg
> ***
> fooAutoInstalled = 1.0.0
> org.apache.karaf.features.configKey = case-install-mixed
> felix.fileinstall.filename = 
> file:/Users/paul/Documents/apache-karaf-4.4.6/etc/case-install-mixed.cfg
> foobarNoneInstalled = 1.0.0
>
>
> ***
> * case-install-none.cfg
> ***
> barNoneInstalled = 1.0.0
> org.apache.karaf.features.configKey = case-install-none
> felix.fileinstall.filename = 
> file:/Users/paul/Documents/apache-karaf-4.4.6/etc/case-install-none.cfg
> fooNoneInstalled = 1.0.0
>
>
> > On Jul 11, 2024, at 2:31 PM, Paul Spencer <[email protected]> 
> > wrote:
> >
> > Karaf 4.4.3 and Karaf 4.4.6
> >
> > Placing a feature.xml file in the deploy directory will not add features to 
> > Karaf if all features contain the attribute 'install', i.e. <feature 
> > name="..." install="...">.  As long as one feature does not contain the 
> > attribute "install", all features in the the file will be listed in 
> > "feature:list"
> >
> > karaf@root()> feature:list | grep case
> > case-install-true-foo             │ 1.0.0            │ x        │ Started   
> >   │ install-true-1.0.0                │
> > case-install-true-bar             │ 1.0.0            │          │ 
> > Uninstalled │ install-true-1.0.0                │
> > karaf@root()>
> >
> > ***
> > * deploy/install-false-1.0.0.xml
> > ***
> > <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> > <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0"; 
> > name="install-false-1.0.0">
> >    <feature name="case-install-false-foo" install="false" version="1.0.0">
> >        <bundle 
> > start="false">mvn:org.apache.commons/commons-lang3/3.14.0</bundle>
> >    </feature>
> >    <feature name="case-install-false-bar" install="false" version="1.0.0">
> >        <bundle 
> > start="false">mvn:commons-beanutils/commons-beanutils/1.9.4</bundle>
> >    </feature>
> > </features>
> >
> > ***
> > * deploy/install-true-1.0.0.xml
> > ***
> > <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
> > <features xmlns="http://karaf.apache.org/xmlns/features/v1.6.0"; 
> > name="install-true-1.0.0">
> >    <feature name="case-install-true-foo" version="1.0.0">
> >        <bundle 
> > start="false">mvn:org.apache.commons/commons-lang3/3.14.0</bundle>
> >    </feature>
> >    <feature name="case-install-true-bar" install="false" version="1.0.0">
> >        <bundle 
> > start="false">mvn:commons-beanutils/commons-beanutils/1.9.4</bundle>
> >    </feature>
> > </features>
> >
> >
> > Is this a bug?
> >
> > Paul Spencer
>
>

Reply via email to