Reka, I am still having trouble with the model.
Actually, I was wondering if you could, for example based on the example you sent out previously (I attached the json) or some other suitable model describe which cartridge, group gets started up when (pretty much explain how the dependencies are resolved and what states a cartridge or groups has to be) ? I think it would be really helpful to understand the model. I f this is not possible can we setup a meeting to discuss it ? Thanks Martin From: Martin Eppel (meppel) Sent: Tuesday, October 14, 2014 1:15 PM To: Reka Thirunavukkarasu Cc: dev@stratos.apache.org; Isuru Haththotuwa; Udara Liyanage Subject: RE: [Grouping][testing] How to model nested dependencies ? Reka, I think the issue is I don’t understand what goes into the “component” and dependencies section of the application definition. My current understanding is that all groups in an application have to be listed in the “components” section – but it also seems to make them all to top level groups. One of the reasons I choose the example below is that I don’t have a clear understanding on how to model the top level group (group1) versus the sub groups (group2, group3). In the example below I tried to specify group1 as top level group and group2, group3 as sub groups (group2 a sub group of group1 and group3 a subgroup of group3). But it seems I have to list them all in the component section of the application to assign group alias (if I don’t list a group in the component section and exception is thrown). But, once listed in the component section it makes them all top level groups and what happens to the dependencies described in the sub groups ? Actually, right know I am even more confused than before how to model sub groups vs. top level groups and how to model respective dependencies. For example, if I want to have only one top level group and many sub groups with dependencies among the sub groups, how would I model it: Using my initial example, where group1 would be the top level group and group2 and group3 would be sub groups, how would the application definition look like and how the group definitions ? Thanks Martin From: Reka Thirunavukkarasu [mailto:r...@wso2.com] Sent: Monday, October 13, 2014 10:56 PM To: Martin Eppel (meppel) Cc: dev@stratos.apache.org<mailto:dev@stratos.apache.org>; Isuru Haththotuwa; Udara Liyanage Subject: Re: [Grouping][testing] How to model nested dependencies ? Hi Martin, As i mentioned in the other mail, you can define startup order for top level groups/cartridges in the application and you can define startup order in the group definition for group's subgroups/cartridges. In your case, i'm not sure why are you trying with nested group definition. Group1 (c1) should start up after group2, group2 (c2) should start up after group3 (c3) The above is a linear relationship where we can say a startup order as "group.group3, group.group2, group.group1". So that group3 will come up first. Then group2 and group3 will come up accordingly. But if you would like to test nested groups, then you can organise the groups as below: group1 --> c1, c2 where startup order is "c1,c2" group2 --> c1, c3 (no startup order means both will come up in parallel) group3 --> group2, c2 where startup order is "group2, c2" group4 --> group1, c3 where startup order is "group1, c3" application --> group3, group4, c1, c3 where startup order is "group3, c1", "group3, group4" If you write up group definition and application definition for the above mentioned relationship, you can see how these nested groups are brought up as well as you can see some groups/cartridges will be brought up in parallel as well. Thanks, Reka
group1.json
Description: group1.json
group2.json
Description: group2.json
app5.json
Description: app5.json