Staged Boot Question

classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Staged Boot Question

Paul Fraser
Hi,

Back in 2016 there was some discussion about predicable boot feature startup order.

Staged boot was mentioned and the solution involved parentheses, but current documentation does not
mention "staged boot".

Is this functionality still available?

How and where are the parentheses used if staged boot available?

My need relates to previous discussion about service loading. I have an absolute need for aries
dynamic spyfly to be running before the vaadin flow server is activated.

At present, the only way I can get the correct order is to include pax-http in my assembly and start
a vaadin flow feature containing the vaadin server after karaf is running.

Paul Fraser


Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

jbonofre
Hi,

yes, stage boot is present, and used.

Currently, it supports one level (I plan to add several levels).

You can do (in etc/org.apache.karaf.features.cfg):

featuresBoot=(...),...

The features in the parentheses will be started before the one outside
of the parentheses.

Regards
JB

On 02/06/2019 07:03, Paul Fraser wrote:

> Hi,
>
> Back in 2016 there was some discussion about predicable boot feature
> startup order.
>
> Staged boot was mentioned and the solution involved parentheses, but
> current documentation does not mention "staged boot".
>
> Is this functionality still available?
>
> How and where are the parentheses used if staged boot available?
>
> My need relates to previous discussion about service loading. I have an
> absolute need for aries dynamic spyfly to be running before the vaadin
> flow server is activated.
>
> At present, the only way I can get the correct order is to include
> pax-http in my assembly and start a vaadin flow feature containing the
> vaadin server after karaf is running.
>
> Paul Fraser
>
>

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

Paul Fraser
Sounds good.

How do I handle it in the assembly pom to get it into features.cfg?
     <bootFeatures>
<feature>standard</feature>
<feature>{pax-http)</feature>
<feature>vaadin-flow</feature>
     </bootFeatures>

If only one level, how is standard staged?

Or should vaadin-flow be placed in <startupFeatures> ?

Paul

On 2/06/2019 3:06 pm, Jean-Baptiste Onofré wrote:

> Hi,
>
> yes, stage boot is present, and used.
>
> Currently, it supports one level (I plan to add several levels).
>
> You can do (in etc/org.apache.karaf.features.cfg):
>
> featuresBoot=(...),...
>
> The features in the parentheses will be started before the one outside
> of the parentheses.
>
> Regards
> JB
>
> On 02/06/2019 07:03, Paul Fraser wrote:
>> Hi,
>>
>> Back in 2016 there was some discussion about predicable boot feature
>> startup order.
>>
>> Staged boot was mentioned and the solution involved parentheses, but
>> current documentation does not mention "staged boot".
>>
>> Is this functionality still available?
>>
>> How and where are the parentheses used if staged boot available?
>>
>> My need relates to previous discussion about service loading. I have an
>> absolute need for aries dynamic spyfly to be running before the vaadin
>> flow server is activated.
>>
>> At present, the only way I can get the correct order is to include
>> pax-http in my assembly and start a vaadin flow feature containing the
>> vaadin server after karaf is running.
>>
>> Paul Fraser
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

jbonofre
Hi Paul,

startupFeatures and bootFeatures are very different.

startupFeatures will end into etc/startup.properties which is the early
early stage of boot, even before the Karaf feature service. It's more at
"framework" level. You can see the usage in my blog post about static
distribution (http://blog.nanthrax.net/?p=893).
bootFeatures are started by the Karaf features service.

If there's not stage, then, the features resolver (thanks for the
requirements and capabilities) will define the startup order between
features (in the boot part of the Karaf features service).

In your case, you should have (standard, http),vaadin-flow.

By the way, I recommend to not use standard meta feature in boot, but
rather the concrete features defined by standard meta feature.

Regards
JB

On 02/06/2019 07:26, Paul Fraser wrote:

> Sounds good.
>
> How do I handle it in the assembly pom to get it into features.cfg?
>     <bootFeatures>
> <feature>standard</feature>
> <feature>{pax-http)</feature>
> <feature>vaadin-flow</feature>
>     </bootFeatures>
>
> If only one level, how is standard staged?
>
> Or should vaadin-flow be placed in <startupFeatures> ?
>
> Paul
>
> On 2/06/2019 3:06 pm, Jean-Baptiste Onofré wrote:
>> Hi,
>>
>> yes, stage boot is present, and used.
>>
>> Currently, it supports one level (I plan to add several levels).
>>
>> You can do (in etc/org.apache.karaf.features.cfg):
>>
>> featuresBoot=(...),...
>>
>> The features in the parentheses will be started before the one outside
>> of the parentheses.
>>
>> Regards
>> JB
>>
>> On 02/06/2019 07:03, Paul Fraser wrote:
>>> Hi,
>>>
>>> Back in 2016 there was some discussion about predicable boot feature
>>> startup order.
>>>
>>> Staged boot was mentioned and the solution involved parentheses, but
>>> current documentation does not mention "staged boot".
>>>
>>> Is this functionality still available?
>>>
>>> How and where are the parentheses used if staged boot available?
>>>
>>> My need relates to previous discussion about service loading. I have an
>>> absolute need for aries dynamic spyfly to be running before the vaadin
>>> flow server is activated.
>>>
>>> At present, the only way I can get the correct order is to include
>>> pax-http in my assembly and start a vaadin flow feature containing the
>>> vaadin server after karaf is running.
>>>
>>> Paul Fraser
>>>
>>>
>

--
Jean-Baptiste Onofré
[hidden email]
http://blog.nanthrax.net
Talend - http://www.talend.com
Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

Paul Fraser
On 2/06/2019 4:13 pm, Jean-Baptiste Onofré wrote:
> In your case, you should have (standard, http),vaadin-flow.

So, how would this be represented in the assembly pom, also if concrete standard features are used?
Brackets in my tests are ignored in the assembly pom.

<bootFeatures>
<feature>standard</feature>
<feature>{standard,pax-http)</feature>
<feature>vaadin-flow</feature>
</bootFeatures>

Paul

By the way, I recommend to not use standard meta feature in boot, but
rather the concrete features defined by standard meta feature.

Regards
JB

On 02/06/2019 07:26, Paul Fraser wrote:

>> Sounds good.
>>
>> How do I handle it in the assembly pom to get it into features.cfg?
>>      <bootFeatures>
>> <feature>standard</feature>
>> <feature>{pax-http)</feature>
>> <feature>vaadin-flow</feature>
>>      </bootFeatures>
>>
>> If only one level, how is standard staged?
>>
>> Or should vaadin-flow be placed in <startupFeatures> ?
>>
>> Paul
>>
>> On 2/06/2019 3:06 pm, Jean-Baptiste Onofré wrote:
>>> Hi,
>>>
>>> yes, stage boot is present, and used.
>>>
>>> Currently, it supports one level (I plan to add several levels).
>>>
>>> You can do (in etc/org.apache.karaf.features.cfg):
>>>
>>> featuresBoot=(...),...
>>>
>>> The features in the parentheses will be started before the one outside
>>> of the parentheses.
>>>
>>> Regards
>>> JB
>>>
>>> On 02/06/2019 07:03, Paul Fraser wrote:
>>>> Hi,
>>>>
>>>> Back in 2016 there was some discussion about predicable boot feature
>>>> startup order.
>>>>
>>>> Staged boot was mentioned and the solution involved parentheses, but
>>>> current documentation does not mention "staged boot".
>>>>
>>>> Is this functionality still available?
>>>>
>>>> How and where are the parentheses used if staged boot available?
>>>>
>>>> My need relates to previous discussion about service loading. I have an
>>>> absolute need for aries dynamic spyfly to be running before the vaadin
>>>> flow server is activated.
>>>>
>>>> At present, the only way I can get the correct order is to include
>>>> pax-http in my assembly and start a vaadin flow feature containing the
>>>> vaadin server after karaf is running.
>>>>
>>>> Paul Fraser
>>>>
>>>>

Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

Paul Fraser
Hi  JB,

Thanks for your perseverence so far.

Trying to get correct feature install order using "requirement" as you suggest.

Spifly dynamic bundle exposes capability "osgi.extender=osgi.serviceloader.registrar"

Attached file has snippet of my approach. But does not work for me, yet.

Paul


requirement.txt (2K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

Paul Fraser
Hi,

This works perfectly but problem is how to set this value from assembly pom.

featuresBoot = \
     framework/4.2.5, \
     (standard/4.2.5, pax-http/7.2.8)\
     (vaadin-flow-base),\
     vaadin-flow

Paul



On 3/06/2019 7:22 am, Paul Fraser wrote:

> Hi  JB,
>
> Thanks for your perseverence so far.
>
> Trying to get correct feature install order using "requirement" as you suggest.
>
> Spifly dynamic bundle exposes capability "osgi.extender=osgi.serviceloader.registrar"
>
> Attached file has snippet of my approach. But does not work for me, yet.
>
> Paul
>

Reply | Threaded
Open this post in threaded view
|

Re: Staged Boot Question

Paul Fraser
Hi JB,

I did not explain the assistance I was seeking in my last mail very well.

Is it possible to set a value for featuresBoot in the features.cfg file as part of the assembly
(pom) process?

If so, what do I need to do?

The staged value shown below is the value I need to set.

Paul Fraser


On 3/06/2019 12:31 pm, Paul Fraser wrote:

> This works perfectly but problem is how to set this value from assembly pom.
>
> featuresBoot = \
>     framework/4.2.5, \
>     (standard/4.2.5, pax-http/7.2.8)\
>     (vaadin-flow-base),\
>     vaadin-flow
>
> Paul
>
>
>
> On 3/06/2019 7:22 am, Paul Fraser wrote:
>> Hi  JB,
>>
>> Thanks for your perseverence so far.
>>
>> Trying to get correct feature install order using "requirement" as you suggest.
>>
>> Spifly dynamic bundle exposes capability "osgi.extender=osgi.serviceloader.registrar"
>>
>> Attached file has snippet of my approach. But does not work for me, yet.
>>
>> Paul
>>
>
>