[ 
https://issues.apache.org/jira/browse/STRATOS-1018?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Manula Chathurika Thantriwatte updated STRATOS-1018:
----------------------------------------------------
    Description: 
Stratos 4.1.0 should support nested groups and nested application JSON formats. 
Here are some sample JSONs.

Group JSON :

{  
   "name":"group2",
   "groups":[  
      {  
         "name":"group1",
         "cartridges":[  
            "tomcat1"
         ],
         "dependencies":{  
            "terminationBehaviour":"terminate-none"
         }
      }
   ],
   "cartridges":[  
      "tomcat"
   ],
   "dependencies":{  
      "startupOrders":[  
         "group1,tomcat"
      ],
      "terminationBehaviour":"terminate-dependents",
      "scalingDependents":[  
         "group1,tomcat"
      ]
   }
}

Application JSON : 

{  
   "applicationId":"test_app5",
   "alias":"myapp5",
   "components":{  
      "groups":[  
         {  
            "name":"group2",
            "alias":"group2alias",
            "groupMinInstances":1,
            "groupMaxInstances":2,
            "isGroupScalingEnabled":"false",
            "cartridges":[  
               {  
                  "type":"tomcat",
                  "cartridgeMin":1,
                  "cartridgeMax":2,
                  "subscribableInfo":{  
                     "alias":"alias2",
                     "autoscalingPolicy":"autoscale_policy_1",
                     "privateRepo":"true",
                     "repoPassword":"password",
                     "repoURL":"http://xxx:10080/git/default.git";,
                     "repoUsername":"user"
                  }
               }
            ],
            "groups":[  
               {  
                  "name":"group1",
                  "alias":"group1alias",
                  "groupMinInstances":2,
                  "groupMaxInstances":5,
                  "isGroupScalingEnabled":"true",
                  "cartridges":[  
                     {  
                        "type":"tomcat1",
                        "cartridgeMin":1,
                        "cartridgeMax":2,
                        "subscribableInfo":{  
                           "alias":"alias3",
                           "autoscalingPolicy":"autoscale_policy_1",
                           "privateRepo":"true",
                           "repoPassword":"password",
                           "repoURL":"http://xxx:10080/git/default.git";,
                           "repoUsername":"user"
                        }
                     }
                  ]
               }
            ]
         }
      ],
      "cartridges":[  
         {  
            "type":"tomcat",
            "cartridgeMin":1,
            "cartridgeMax":2,
            "subscribableInfo":{  
               "alias":"alias1",
               "autoscalingPolicy":"autoscale_policy_1",
               "privateRepo":"true",
               "repoPassword":"password",
               "repoURL":"http://xxx:10080/git/default.git";,
               "repoUsername":"user"
            }
         }
      ]
   }
}

> Support new group and application JSON format
> ---------------------------------------------
>
>                 Key: STRATOS-1018
>                 URL: https://issues.apache.org/jira/browse/STRATOS-1018
>             Project: Stratos
>          Issue Type: Improvement
>          Components: Autoscaler, Stratos Manager
>    Affects Versions: 4.0.0
>            Reporter: Manula Chathurika Thantriwatte
>            Assignee: Manula Chathurika Thantriwatte
>             Fix For: 4.1.0 Alpha
>
>
> Stratos 4.1.0 should support nested groups and nested application JSON 
> formats. Here are some sample JSONs.
> Group JSON :
> {  
>    "name":"group2",
>    "groups":[  
>       {  
>          "name":"group1",
>          "cartridges":[  
>             "tomcat1"
>          ],
>          "dependencies":{  
>             "terminationBehaviour":"terminate-none"
>          }
>       }
>    ],
>    "cartridges":[  
>       "tomcat"
>    ],
>    "dependencies":{  
>       "startupOrders":[  
>          "group1,tomcat"
>       ],
>       "terminationBehaviour":"terminate-dependents",
>       "scalingDependents":[  
>          "group1,tomcat"
>       ]
>    }
> }
> Application JSON : 
> {  
>    "applicationId":"test_app5",
>    "alias":"myapp5",
>    "components":{  
>       "groups":[  
>          {  
>             "name":"group2",
>             "alias":"group2alias",
>             "groupMinInstances":1,
>             "groupMaxInstances":2,
>             "isGroupScalingEnabled":"false",
>             "cartridges":[  
>                {  
>                   "type":"tomcat",
>                   "cartridgeMin":1,
>                   "cartridgeMax":2,
>                   "subscribableInfo":{  
>                      "alias":"alias2",
>                      "autoscalingPolicy":"autoscale_policy_1",
>                      "privateRepo":"true",
>                      "repoPassword":"password",
>                      "repoURL":"http://xxx:10080/git/default.git";,
>                      "repoUsername":"user"
>                   }
>                }
>             ],
>             "groups":[  
>                {  
>                   "name":"group1",
>                   "alias":"group1alias",
>                   "groupMinInstances":2,
>                   "groupMaxInstances":5,
>                   "isGroupScalingEnabled":"true",
>                   "cartridges":[  
>                      {  
>                         "type":"tomcat1",
>                         "cartridgeMin":1,
>                         "cartridgeMax":2,
>                         "subscribableInfo":{  
>                            "alias":"alias3",
>                            "autoscalingPolicy":"autoscale_policy_1",
>                            "privateRepo":"true",
>                            "repoPassword":"password",
>                            "repoURL":"http://xxx:10080/git/default.git";,
>                            "repoUsername":"user"
>                         }
>                      }
>                   ]
>                }
>             ]
>          }
>       ],
>       "cartridges":[  
>          {  
>             "type":"tomcat",
>             "cartridgeMin":1,
>             "cartridgeMax":2,
>             "subscribableInfo":{  
>                "alias":"alias1",
>                "autoscalingPolicy":"autoscale_policy_1",
>                "privateRepo":"true",
>                "repoPassword":"password",
>                "repoURL":"http://xxx:10080/git/default.git";,
>                "repoUsername":"user"
>             }
>          }
>       ]
>    }
> }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to