stratos-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Eppel (meppel)" <mep...@cisco.com>
Subject composite application structure
Date Tue, 23 Sep 2014 22:13:58 GMT
Hi Isuru,

I was going over the application structure once more and wanted to confirm my complete understanding
of some of the application specific objects and fields (based on the reference json structure
below):



·        "components":

o   is split in sections to assign the deployment, autoscaling policies for all the components
being used in application

o   components are groups and cartridges (subscribables)

·        "components"."groups":

o   defines the subscription information for all groups in an application
(meaning each group definition used in the application either defined as top level group or
directly or indirectly referencing a previously deployed group definitions (reusable))

o   defines top level groups ("on the fly groups"), which are specific to the application
and can only be used by application,

o   "components"."groups"."subGroups":

§  Only apply to top level groups

§  reference reusable group definitions or top level groups

o   any non-top level group would only define  "name" (as a pointer to group definition),
"alias", "deploymentPolicy" and "autoscalingPolicy" (but no "subGroups" or "subscribables")

·        "components" ."dependencies" (optional):

o   Only apply to top level groups

o   Can reference top level groups, reusable groups, cartridges

·        "components" ."subscribables":

o   lists all subscribales used in application and assign an alias

·        "subscribableInfo":

o   assigns the deployment, autoscaling policies to cartridges (subscription info)



application reference json:

{
  "applicationId": "test_app2",
  "alias": "myapp2",
  "components": {
    "groups": [
      {
        "name": "group2",
        "alias": "group2alias",
        "deploymentPolicy": "group2deploymentPolicy",
        "autoscalingPolicy": "group2autoscalingPolicy",
        "subscribables": [

        ],
        "subGroups": []
      }
    ],
    "subscribables": [

    ],
    "dependencies": {

    }
  },
  "subscribableInfo": [
    {

    }
  ]
}


Let me know if my understanding is still correct,

Thanks

Martin

Mime
View raw message