Hi Isuru, I think this is a good idea: question regarding the json format below, in a previous email I think we discussed to split the “subscribables” into “groups” (nested groups) and “cartridges”, is this still correct (see sample below) ? Also, I am not sure how the dependencies are described through the “deployed Service Groups” ?
I think we need an example of a complete description including the Service Group dependencies to make sure that we are not leaving out some information, Thanks Martin { "name": "group1", "cartridges": [ "mysql", "mongoDB" ], "dependencies": { "killBehaviour": "kill-none" } } [2]. { "name": "group2", "subGroups": [ "group1" ], "cartridges": [ "php" ], "dependencies": { "startupOrder": [ { "start": "group.group1", "after": "cartridge.php" } ], "killBehaviour": "kill-dependents" } } From: isu...@wso2.com [mailto:isu...@wso2.com] On Behalf Of Isuru Haththotuwa Sent: Friday, July 04, 2014 1:11 AM To: dev; Martin Eppel (meppel) Subject: Composite Application Definition with Reference to Deployed Service Groups Hi all, Since we have the Service Group persistence now, we can change the Composite Application to refer the previously deployed Service Groups [1]. WDYT? The Subscribable section will carry subscription level information related to each cartridge in the group. Even for a nested group, we can specify this information as a flat structure (an array) since we already have captured dependency information from the deployed Service Groups. I believe this will reduce the complexity of this JSON definition. Note that there are policies (autoscaling/deployment) defined per group and per Subscribable. This is for the purpose of member/group wise scaling. Also note the alias I have used for two Subscribables in the group; I believe we can derive that from the group alias without the user having to give an explicit alias for each Subscribable. Sent a separate mail to the dev list suggesting that earlier with subject [2]. [1]. { "applicationId": "test_app", "alias": "myapp1", "components": [ { "group": "group1", "alias": "mygroup1", "deploymentPolicy": "dep_policy_group1", "autoscalingPolicy": "autoscale_policy_group1", "subscribables": [ { "type": "mysql", "alias": "mygroup1.mysql", "deploymentPolicy": "dep_policy_mysql", "autoscalingPolicy": "autoscale_policy_mysql" }, { "type": "php", "alias": "mygroup1.php", "deploymentPolicy": "dep_policy_php", "autoscalingPolicy": "autoscale_policy_php", "repoURL": "www.mygit.com/php.git<http://www.mygit.com/php.git>", "privateRepo": "true", "repoUsername": "admin", "repoPassword": "xxxx" } ] }, ], "cartridges": [ { "type": "tomcat", "alias": "mytomcat", "deploymentPolicy": "dep_policy_tomcat", "autoscalingPolicy": "autoscale_policy_tomcat", "repoURL": "www.mygit.com/tomcat.git<http://www.mygit.com/tomcat.git>", "privateRepo": "false", "repoUsername": "admin", "repoPassword": "yyyy" } ] } [2]. Composite Application Deployment and Subscription - Single Alias for a Group -- Thanks and Regards, Isuru H. +94 716 358 048