You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2015/01/11 14:45:01 UTC

[4/4] stratos git commit: Moving sample applications to stratos git repository, refactoring the folder structure, formatting json files

Moving sample applications to stratos git repository, refactoring the folder structure, formatting json files


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/704db4b7
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/704db4b7
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/704db4b7

Branch: refs/heads/master
Commit: 704db4b7ca71e91e780b1ddfa4a535af5d51bd5f
Parents: 7795f03
Author: Imesh Gunaratne <im...@apache.org>
Authored: Sun Jan 11 19:14:30 2015 +0530
Committer: Imesh Gunaratne <im...@apache.org>
Committed: Sun Jan 11 19:14:31 2015 +0530

----------------------------------------------------------------------
 samples/README.md                               |   6 +
 samples/complex-app/README.md                   |   6 +
 .../ec2/artifacts/application_definition.json   |  98 +++++++++++++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/deployment-policy.json        |  71 ++++++++++
 samples/complex-app/ec2/artifacts/group6c.json  |  21 +++
 samples/complex-app/ec2/artifacts/group8c.json  |  21 +++
 samples/complex-app/ec2/artifacts/tomcat.json   |  46 ++++++
 samples/complex-app/ec2/artifacts/tomcat1.json  |  47 +++++++
 samples/complex-app/ec2/artifacts/tomcat2.json  |  47 +++++++
 samples/complex-app/ec2/deploy.sh               |  36 +++++
 .../mock/artifacts/application_definition.json  |  98 +++++++++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/deployment-policy.json       |  71 ++++++++++
 samples/complex-app/mock/artifacts/group6c.json |  21 +++
 samples/complex-app/mock/artifacts/group8c.json |  21 +++
 samples/complex-app/mock/artifacts/tomcat.json  |  46 ++++++
 samples/complex-app/mock/artifacts/tomcat1.json |  52 +++++++
 samples/complex-app/mock/artifacts/tomcat2.json |  52 +++++++
 samples/complex-app/mock/deploy.sh              |  35 +++++
 .../ec2/artifacts/app_dependency_scaling.json   |  32 +++++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/dep_dependency_scaling.json   |  56 ++++++++
 .../sample-cartridges/ec2/artifacts/tomcat.json |  46 ++++++
 .../ec2/artifacts/tomcat1.json                  |  47 +++++++
 .../sample-cartridges/ec2/deploy.sh             |  14 ++
 .../mock/artifacts/app_dependency_scaling.json  |  32 +++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_dependency_scaling.json  |  55 ++++++++
 .../sample-cartridges/mock/artifacts/php.json   |  46 ++++++
 .../mock/artifacts/tomcat.json                  |  46 ++++++
 .../sample-cartridges/mock/deploy.sh            |  19 +++
 .../artifacts/app_dependency_scaling.json       |  32 +++++
 .../openstack/artifacts/autoscale-policy.json   |  14 ++
 .../artifacts/dep_dependency_scaling.json       |  56 ++++++++
 .../openstack/artifacts/tomcat.json             |  51 +++++++
 .../openstack/artifacts/tomcat1.json            |  52 +++++++
 .../sample-cartridges/openstack/deploy.sh       |  19 +++
 .../ec2/artifacts/app_single_group.json         |  52 +++++++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/dep_single_group.json         |  56 ++++++++
 .../sample-groups/ec2/artifacts/esb.json        |  40 ++++++
 .../sample-groups/ec2/artifacts/group6c.json    |  15 ++
 .../sample-groups/ec2/artifacts/php.json        |  46 ++++++
 .../sample-groups/ec2/artifacts/tomcat.json     |  46 ++++++
 .../sample-groups/ec2/deploy.sh                 |  17 +++
 .../mock/artifacts/app_single_group.json        |  52 +++++++
 .../mock/artifacts/app_single_group.json-para   |  46 ++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_single_group.json        |  56 ++++++++
 .../sample-groups/mock/artifacts/esb.json       |  46 ++++++
 .../sample-groups/mock/artifacts/group6c.json   |  15 ++
 .../sample-groups/mock/artifacts/php.json       |  52 +++++++
 .../sample-groups/mock/artifacts/tomcat.json    |  52 +++++++
 .../sample-groups/mock/deploy.sh                |  18 +++
 .../mock/artifacts/app_deployment_policy.json   |  67 +++++++++
 .../mock/artifacts/autoscale-policy-c1.json     |  14 ++
 .../mock/artifacts/autoscale-policy-c2.json     |  14 ++
 .../mock/artifacts/autoscale-policy-c3.json     |  14 ++
 .../mock/artifacts/autoscale-policy-c4.json     |  14 ++
 samples/group-scaling-v1/mock/artifacts/c1.json |  46 ++++++
 samples/group-scaling-v1/mock/artifacts/c2.json |  46 ++++++
 samples/group-scaling-v1/mock/artifacts/c3.json |  46 ++++++
 samples/group-scaling-v1/mock/artifacts/c4.json |  46 ++++++
 .../mock/artifacts/composite_application.json   |  35 +++++
 .../group-scaling-v1/mock/artifacts/group1.json |  18 +++
 samples/group-scaling-v1/mock/deploy.sh         |  31 ++++
 .../mock/artifacts/app_deployment_policy.json   |  71 ++++++++++
 .../mock/artifacts/autoscale-policy-c1.json     |  14 ++
 .../mock/artifacts/autoscale-policy-c2.json     |  14 ++
 .../mock/artifacts/autoscale-policy-c3.json     |  14 ++
 .../mock/artifacts/autoscale-policy-c4.json     |  14 ++
 samples/group-scaling/mock/artifacts/c1.json    |  46 ++++++
 samples/group-scaling/mock/artifacts/c2.json    |  46 ++++++
 samples/group-scaling/mock/artifacts/c3.json    |  46 ++++++
 samples/group-scaling/mock/artifacts/c4.json    |  46 ++++++
 .../mock/artifacts/composite_application.json   |  71 ++++++++++
 .../group-scaling/mock/artifacts/group1.json    |  35 +++++
 samples/group-scaling/mock/deploy.sh            |  30 ++++
 samples/more-complex-app/README.md              |  11 ++
 .../ec2/artifacts/application_definition.json   | 141 +++++++++++++++++++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/deployment-policy.json        |  87 ++++++++++++
 .../more-complex-app/ec2/artifacts/group6c.json |  34 +++++
 .../more-complex-app/ec2/artifacts/group8c.json |  23 +++
 .../more-complex-app/ec2/artifacts/tomcat.json  |  46 ++++++
 .../more-complex-app/ec2/artifacts/tomcat1.json |  47 +++++++
 .../more-complex-app/ec2/artifacts/tomcat2.json |  47 +++++++
 samples/more-complex-app/ec2/deploy.sh          |  26 ++++
 .../mock/artifacts/application_definition.json  | 141 +++++++++++++++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/deployment-policy.json       |  87 ++++++++++++
 .../mock/artifacts/group6c.json                 |  34 +++++
 .../mock/artifacts/group8c.json                 |  23 +++
 .../more-complex-app/mock/artifacts/tomcat.json |  52 +++++++
 .../mock/artifacts/tomcat1.json                 |  52 +++++++
 .../mock/artifacts/tomcat2.json                 |  52 +++++++
 samples/more-complex-app/mock/deploy.sh         |  44 ++++++
 samples/nested-group/README.md                  |   8 ++
 samples/nested-group/deploy.sh                  |  25 ++++
 samples/nested-group/ec2/README.md              |   8 ++
 .../ec2/artifacts/application_definition.json   |  62 ++++++++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/deployment-policy.json        |  55 ++++++++
 samples/nested-group/ec2/artifacts/group6c.json |  21 +++
 samples/nested-group/ec2/artifacts/tomcat.json  |  46 ++++++
 samples/nested-group/ec2/artifacts/tomcat1.json |  47 +++++++
 samples/nested-group/ec2/artifacts/tomcat2.json |  47 +++++++
 samples/nested-group/ec2/deploy.sh              |  25 ++++
 .../mock/artifacts/application_definition.json  |  62 ++++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/deployment-policy.json       |  55 ++++++++
 .../nested-group/mock/artifacts/group6c.json    |  21 +++
 samples/nested-group/mock/artifacts/tomcat.json |  52 +++++++
 .../nested-group/mock/artifacts/tomcat1.json    |  52 +++++++
 .../nested-group/mock/artifacts/tomcat2.json    |  52 +++++++
 samples/single-cartridge/README.md              |   8 ++
 .../ec2/artifacts/app_single_group.json         |  19 +++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/dep_single_group.json         |  41 ++++++
 .../single-cartridge/ec2/artifacts/tomcat.json  |  46 ++++++
 samples/single-cartridge/ec2/deploy.sh          |  11 ++
 .../mock/artifacts/app_single_group.json        |  18 +++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_single_group.json        |  42 ++++++
 .../single-cartridge/mock/artifacts/tomcat.json |  52 +++++++
 samples/single-cartridge/mock/deploy.sh         |  15 ++
 .../openstack/artifacts/app_single_group.json   |  18 +++
 .../openstack/artifacts/autoscale-policy.json   |  14 ++
 .../openstack/artifacts/dep_single_group.json   |  41 ++++++
 .../openstack/artifacts/tomcat.json             |  52 +++++++
 samples/single-cartridge/openstack/deploy.sh    |  12 ++
 .../mock/artifacts/app_single_group.json        |  26 ++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_single_group.json        |  41 ++++++
 .../mock/artifacts/group6c.json                 |  11 ++
 .../mock/artifacts/tomcat.json                  |  52 +++++++
 .../single-group-group-scaling/mock/deploy.sh   |  16 +++
 samples/single-group-v1/README.md               |   7 +
 .../ec2/artifacts/app_single_group.json         |  43 ++++++
 .../ec2/artifacts/app_single_group.json-para    |  46 ++++++
 .../ec2/artifacts/autoscale-policy.json         |  14 ++
 .../ec2/artifacts/dep_single_group.json         |  56 ++++++++
 .../single-group-v1/ec2/artifacts/group6c.json  |  11 ++
 .../single-group-v1/ec2/artifacts/tomcat.json   |  46 ++++++
 .../single-group-v1/ec2/artifacts/tomcat1.json  |  47 +++++++
 .../single-group-v1/ec2/artifacts/tomcat2.json  |  47 +++++++
 samples/single-group-v1/ec2/deploy.sh           |  16 +++
 .../mock/artifacts/app_single_group.json        |  43 ++++++
 .../mock/artifacts/app_single_group.json-para   |  46 ++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_single_group.json        |  56 ++++++++
 .../single-group-v1/mock/artifacts/group6c.json |  11 ++
 .../single-group-v1/mock/artifacts/tomcat.json  |  46 ++++++
 .../single-group-v1/mock/artifacts/tomcat1.json |  52 +++++++
 .../single-group-v1/mock/artifacts/tomcat2.json |  52 +++++++
 samples/single-group-v1/mock/deploy.sh          |  16 +++
 samples/single-group-v2/README.md               |   7 +
 .../ec2/artifacts/app_single_group.json-para    |  46 ++++++
 samples/single-group-v2/ec2/deploy.sh           |  17 +++
 .../mock/artifacts/app_single_group.json        |  52 +++++++
 .../mock/artifacts/app_single_group.json-para   |  46 ++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_single_group.json        |  56 ++++++++
 .../single-group-v2/mock/artifacts/group6c.json |  14 ++
 .../single-group-v2/mock/artifacts/tomcat.json  |  52 +++++++
 .../single-group-v2/mock/artifacts/tomcat1.json |  52 +++++++
 .../single-group-v2/mock/artifacts/tomcat2.json |  52 +++++++
 samples/single-group-v2/mock/deploy.sh          |  17 +++
 .../ec2/artifacts/app_single_group.json-para    |  46 ++++++
 samples/single-group-v3/ec2/deploy.sh           |  15 ++
 .../mock/artifacts/app_single_group.json        |  27 ++++
 .../mock/artifacts/app_single_group.json-para   |  46 ++++++
 .../mock/artifacts/autoscale-policy.json        |  14 ++
 .../mock/artifacts/dep_single_group.json        |  41 ++++++
 .../single-group-v3/mock/artifacts/group6c.json |  11 ++
 .../single-group-v3/mock/artifacts/tomcat.json  |  52 +++++++
 .../single-group-v3/mock/artifacts/tomcat1.json |  52 +++++++
 .../single-group-v3/mock/artifacts/tomcat2.json |  52 +++++++
 samples/single-group-v3/mock/deploy.sh          |  15 ++
 180 files changed, 6626 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/README.md
----------------------------------------------------------------------
diff --git a/samples/README.md b/samples/README.md
new file mode 100644
index 0000000..370b030
--- /dev/null
+++ b/samples/README.md
@@ -0,0 +1,6 @@
+Stratos Sample Applications
+===========================
+
+This folder contains sample applications which demonstrate stratos features. In each sample there is a set of
+artifacts and a deploy.sh file. Run the deploy.sh file to deploy the sample application in a stratos instance
+running on the localhost.

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/README.md
----------------------------------------------------------------------
diff --git a/samples/complex-app/README.md b/samples/complex-app/README.md
new file mode 100644
index 0000000..117e787
--- /dev/null
+++ b/samples/complex-app/README.md
@@ -0,0 +1,6 @@
+complex-app
+===========
+
+- Using these artifacts you can deploy the complex application.
+- In this deployment scenario, it deployed two groups which are nested.
+- Run the deploy.sh to deploy this complex application.

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/application_definition.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/application_definition.json b/samples/complex-app/ec2/artifacts/application_definition.json
new file mode 100644
index 0000000..9424b2f
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/application_definition.json
@@ -0,0 +1,98 @@
+{
+    "applicationId": "app_boo",
+    "alias": "app_boo_r2",
+    "components": {
+        "groups": [
+            {
+                "name": "group6",
+                "alias": "mygroup6",
+                "groupMinInstances": 1,
+                "groupMaxInstances": 1,
+                "groups": [
+                    {
+                        "name": "group7",
+                        "alias": "mygroup7",
+                        "groupMinInstances": 1,
+                        "groupMaxInstances": 1,
+                        "cartridges": [
+                            {
+                                "type": "tomcat1",
+                                "cartridgeMin": 1,
+                                "cartridgeMax": 2,
+                                "subscribableInfo": {
+                                    "alias": "group7tom",
+                                    "autoscalingPolicy": "autoscale_policy_1"
+                                }
+                            }
+                        ]
+                    }
+                ],
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "group6tom",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            },
+            {
+                "name": "group8",
+                "alias": "mygroup8",
+                "groupMinInstances": 1,
+                "groupMaxInstances": 1,
+                "groups": [
+                    {
+                        "name": "group9",
+                        "alias": "mygroup9",
+                        "groupMinInstances": 1,
+                        "groupMaxInstances": 1,
+                        "cartridges": [
+                            {
+                                "type": "tomcat1",
+                                "cartridgeMin": 1,
+                                "cartridgeMax": 2,
+                                "subscribableInfo": {
+                                    "alias": "group9tom",
+                                    "autoscalingPolicy": "autoscale_policy_1"
+                                }
+                            }
+                        ]
+                    }
+                ],
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "group8tom",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            }
+        ],
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "startupOrders": [
+                "group.mygroup8,group.mygroup6,cartridge.mytomcat"
+            ],
+            "terminationBehaviour": "terminate-all"
+        }
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/autoscale-policy.json b/samples/complex-app/ec2/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..e6572e7
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_1",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "upperLimit": 80
+        },
+        "memoryConsumption": {
+            "upperLimit": 90
+        },
+        "loadAverage": {
+            "upperLimit": 50
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/deployment-policy.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/deployment-policy.json b/samples/complex-app/ec2/artifacts/deployment-policy.json
new file mode 100644
index 0000000..2aac579
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/deployment-policy.json
@@ -0,0 +1,71 @@
+{
+    "applicationId": "app_boo",
+    "applicationPolicy": {
+        "networkPartition": [
+            {
+                "id": "EC2-P1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "ec2",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "ap-southeast-1"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup6",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup8",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/group6c.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/group6c.json b/samples/complex-app/ec2/artifacts/group6c.json
new file mode 100755
index 0000000..74fea79
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/group6c.json
@@ -0,0 +1,21 @@
+{
+    "name": "group6",
+    "groups": [
+        {
+            "name": "group7",
+            "cartridges": [
+                "tomcat1"
+            ]
+        }
+    ],
+    "cartridges": [
+        "tomcat2"
+    ],
+    "dependencies": {
+        "startupOrders": [
+            "group.group7,cartridge.tomcat2"
+        ],
+        "terminationBehaviour": "terminate-all"
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/group8c.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/group8c.json b/samples/complex-app/ec2/artifacts/group8c.json
new file mode 100755
index 0000000..fac2096
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/group8c.json
@@ -0,0 +1,21 @@
+{
+    "name": "group8",
+    "groups": [
+        {
+            "name": "group9",
+            "cartridges": [
+                "tomcat1"
+            ]
+        }
+    ],
+    "cartridges": [
+        "tomcat2"
+    ],
+    "dependencies": {
+        "startupOrders": [
+            "group.group9,cartridge.tomcat2"
+        ],
+        "terminationBehaviour": "terminate-all"
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/tomcat.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/tomcat.json b/samples/complex-app/ec2/artifacts/tomcat.json
new file mode 100755
index 0000000..1779e62
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/tomcat.json
@@ -0,0 +1,46 @@
+{
+    "type": "tomcat",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat",
+    "description": "tomcat Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/tomcat1.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/tomcat1.json b/samples/complex-app/ec2/artifacts/tomcat1.json
new file mode 100755
index 0000000..9cafdb9
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/tomcat1.json
@@ -0,0 +1,47 @@
+{
+    "type": "tomcat1",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat1",
+    "description": "tomcat1 Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/artifacts/tomcat2.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/artifacts/tomcat2.json b/samples/complex-app/ec2/artifacts/tomcat2.json
new file mode 100755
index 0000000..cf7b0be
--- /dev/null
+++ b/samples/complex-app/ec2/artifacts/tomcat2.json
@@ -0,0 +1,47 @@
+{
+    "type": "tomcat2",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat2",
+    "description": "tomcat2 Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/ec2/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/complex-app/ec2/deploy.sh b/samples/complex-app/ec2/deploy.sh
new file mode 100755
index 0000000..371b6d4
--- /dev/null
+++ b/samples/complex-app/ec2/deploy.sh
@@ -0,0 +1,36 @@
+#!/bin/sh 
+
+# Create autoscale policy
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/autoscale-policy.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
+
+# Create tomcat cartridge
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+# Deploy tomcat1 cartride
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat1.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+# Deploy tomcat2 cartride
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat2.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+# Deploy group
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group6c.json' -k -v -u admin:admin https://localhost:9443/api/groups
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group8c.json' -k -v -u admin:admin https://localhost:9443/api/groups
+
+# GET group
+#curl -X GET -H "Content-Type: application/json" -k -v -u admin:admin https://localhost:9443/api/groups/group6
+
+sleep 5
+
+# Create application
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/application_definition.json' -k -v -u admin:admin https://localhost:9443/api/applications
+
+sleep 5
+
+# GET application
+# curl -X GET -H "Content-Type: application/json" -k -v -u admin:admin https://localhost:9443/api/applications/myapp1265
+
+# Deploy application
+
+sleep 3
+curl -X POST -H "Content-Type: application/json" -d@'artifacts/deployment-policy.json' -k -v -u admin:admin https://localhost:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/application_definition.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/application_definition.json b/samples/complex-app/mock/artifacts/application_definition.json
new file mode 100644
index 0000000..9424b2f
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/application_definition.json
@@ -0,0 +1,98 @@
+{
+    "applicationId": "app_boo",
+    "alias": "app_boo_r2",
+    "components": {
+        "groups": [
+            {
+                "name": "group6",
+                "alias": "mygroup6",
+                "groupMinInstances": 1,
+                "groupMaxInstances": 1,
+                "groups": [
+                    {
+                        "name": "group7",
+                        "alias": "mygroup7",
+                        "groupMinInstances": 1,
+                        "groupMaxInstances": 1,
+                        "cartridges": [
+                            {
+                                "type": "tomcat1",
+                                "cartridgeMin": 1,
+                                "cartridgeMax": 2,
+                                "subscribableInfo": {
+                                    "alias": "group7tom",
+                                    "autoscalingPolicy": "autoscale_policy_1"
+                                }
+                            }
+                        ]
+                    }
+                ],
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "group6tom",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            },
+            {
+                "name": "group8",
+                "alias": "mygroup8",
+                "groupMinInstances": 1,
+                "groupMaxInstances": 1,
+                "groups": [
+                    {
+                        "name": "group9",
+                        "alias": "mygroup9",
+                        "groupMinInstances": 1,
+                        "groupMaxInstances": 1,
+                        "cartridges": [
+                            {
+                                "type": "tomcat1",
+                                "cartridgeMin": 1,
+                                "cartridgeMax": 2,
+                                "subscribableInfo": {
+                                    "alias": "group9tom",
+                                    "autoscalingPolicy": "autoscale_policy_1"
+                                }
+                            }
+                        ]
+                    }
+                ],
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "group8tom",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            }
+        ],
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "startupOrders": [
+                "group.mygroup8,group.mygroup6,cartridge.mytomcat"
+            ],
+            "terminationBehaviour": "terminate-all"
+        }
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/autoscale-policy.json b/samples/complex-app/mock/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..e6572e7
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_1",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "upperLimit": 80
+        },
+        "memoryConsumption": {
+            "upperLimit": 90
+        },
+        "loadAverage": {
+            "upperLimit": 50
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/deployment-policy.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/deployment-policy.json b/samples/complex-app/mock/artifacts/deployment-policy.json
new file mode 100644
index 0000000..a2d0e3a
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/deployment-policy.json
@@ -0,0 +1,71 @@
+{
+    "applicationId": "app_boo",
+    "applicationPolicy": {
+        "networkPartition": [
+            {
+                "id": "openstack_R1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "mock",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "RegionOne"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup6",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup8",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/group6c.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/group6c.json b/samples/complex-app/mock/artifacts/group6c.json
new file mode 100755
index 0000000..74fea79
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/group6c.json
@@ -0,0 +1,21 @@
+{
+    "name": "group6",
+    "groups": [
+        {
+            "name": "group7",
+            "cartridges": [
+                "tomcat1"
+            ]
+        }
+    ],
+    "cartridges": [
+        "tomcat2"
+    ],
+    "dependencies": {
+        "startupOrders": [
+            "group.group7,cartridge.tomcat2"
+        ],
+        "terminationBehaviour": "terminate-all"
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/group8c.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/group8c.json b/samples/complex-app/mock/artifacts/group8c.json
new file mode 100755
index 0000000..fac2096
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/group8c.json
@@ -0,0 +1,21 @@
+{
+    "name": "group8",
+    "groups": [
+        {
+            "name": "group9",
+            "cartridges": [
+                "tomcat1"
+            ]
+        }
+    ],
+    "cartridges": [
+        "tomcat2"
+    ],
+    "dependencies": {
+        "startupOrders": [
+            "group.group9,cartridge.tomcat2"
+        ],
+        "terminationBehaviour": "terminate-all"
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/tomcat.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/tomcat.json b/samples/complex-app/mock/artifacts/tomcat.json
new file mode 100755
index 0000000..7237b20
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/tomcat.json
@@ -0,0 +1,46 @@
+{
+    "type": "tomcat",
+    "provider": "apache",
+    "host": "isuruh.lk",
+    "category": "data",
+    "displayName": "tomcat",
+    "description": "tomcat Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "mock",
+            "imageId": "RegionOne/b4ca55e3-58ab-4937-82ce-817ebd10240e",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "reka"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/tomcat1.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/tomcat1.json b/samples/complex-app/mock/artifacts/tomcat1.json
new file mode 100755
index 0000000..eb57815
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/tomcat1.json
@@ -0,0 +1,52 @@
+{
+    "type": "tomcat1",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat1",
+    "description": "tomcat1 Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "mock",
+            "imageId": "RegionOne/b4ca55e3-58ab-4937-82ce-817ebd10240e",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "reka"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/artifacts/tomcat2.json
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/artifacts/tomcat2.json b/samples/complex-app/mock/artifacts/tomcat2.json
new file mode 100755
index 0000000..63b4429
--- /dev/null
+++ b/samples/complex-app/mock/artifacts/tomcat2.json
@@ -0,0 +1,52 @@
+{
+    "type": "tomcat2",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat2",
+    "description": "tomcat2 Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "mock",
+            "imageId": "RegionOne/b4ca55e3-58ab-4937-82ce-817ebd10240e",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "reka"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/complex-app/mock/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/complex-app/mock/deploy.sh b/samples/complex-app/mock/deploy.sh
new file mode 100755
index 0000000..9e9ffcd
--- /dev/null
+++ b/samples/complex-app/mock/deploy.sh
@@ -0,0 +1,35 @@
+#!/bin/sh 
+
+# Create autoscale policy
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
+
+# Create tomcat cartridge
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+# Deploy tomcat1 cartride
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat1.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+# Deploy tomcat2 cartride
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat2.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+# Deploy group
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group6c.json' -k -v -u admin:admin https://localhost:9443/api/groups
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group8c.json' -k -v -u admin:admin https://localhost:9443/api/groups
+
+# GET group
+#curl -X GET -H "Content-Type: application/json" -k -v -u admin:admin https://localhost:9443/api/groups/group6
+
+
+sleep 5
+# Create application
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/application_definition.json' -k -v -u admin:admin https://localhost:9443/api/applications
+
+sleep 5
+# GET application
+# curl -X GET -H "Content-Type: application/json" -k -v -u admin:admin https://localhost:9443/api/applications/myapp1265
+
+# Deploy application
+
+sleep 3
+curl -X POST -H "Content-Type: application/json" -d@'artifacts/deployment-policy.json' -k -v -u admin:admin https://localhost:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/ec2/artifacts/app_dependency_scaling.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/ec2/artifacts/app_dependency_scaling.json b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/app_dependency_scaling.json
new file mode 100644
index 0000000..97b53be
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/app_dependency_scaling.json
@@ -0,0 +1,32 @@
+{
+    "applicationId": "app_group_v1",
+    "alias": "mytestapp1",
+    "components": {
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            },
+            {
+                "type": "tomcat1",
+                "cartridgeMin": 2,
+                "cartridgeMax": 4,
+                "subscribableInfo": {
+                    "alias": "mytomcat1",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "scalingDependants": [
+                "cartridge.mytomcat, cartridge.mytomcat1"
+            ],
+            "terminationBehaviour": "terminate-none"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/ec2/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/ec2/artifacts/autoscale-policy.json b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..bf2499e
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_1",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "threshold": 40
+        },
+        "memoryConsumption": {
+            "threshold": 70
+        },
+        "loadAverage": {
+            "threshold": 100
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/ec2/artifacts/dep_dependency_scaling.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/ec2/artifacts/dep_dependency_scaling.json b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/dep_dependency_scaling.json
new file mode 100644
index 0000000..cc08ec3
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/dep_dependency_scaling.json
@@ -0,0 +1,56 @@
+{
+    "applicationId": "app_group_v1",
+    "applicationPolicy": {
+        "applicationId": "app_group_v1",
+        "networkPartition": [
+            {
+                "id": "EC2-P1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "ec2",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "ap-southeast-1"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mytomcat1",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 10
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat.json b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat.json
new file mode 100755
index 0000000..1779e62
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat.json
@@ -0,0 +1,46 @@
+{
+    "type": "tomcat",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat",
+    "description": "tomcat Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat1.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat1.json b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat1.json
new file mode 100755
index 0000000..9cafdb9
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/ec2/artifacts/tomcat1.json
@@ -0,0 +1,47 @@
+{
+    "type": "tomcat1",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat1",
+    "description": "tomcat1 Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/ec2/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/ec2/deploy.sh b/samples/dependency-scaling/sample-cartridges/ec2/deploy.sh
new file mode 100755
index 0000000..5a72510
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/ec2/deploy.sh
@@ -0,0 +1,14 @@
+#!/bin/sh 
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/autoscale-policy.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat1.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+sleep 2
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/app_dependency_scaling.json' -k -v -u admin:admin https://localhost:9443/api/applications
+
+sleep 2
+curl -X POST -H "Content-Type: application/json" -d@'artifacts/dep_dependency_scaling.json' -k -v -u admin:admin https://localhost:9443/api/applications/app_group_v1/deploy
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/mock/artifacts/app_dependency_scaling.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/mock/artifacts/app_dependency_scaling.json b/samples/dependency-scaling/sample-cartridges/mock/artifacts/app_dependency_scaling.json
new file mode 100644
index 0000000..e875a20
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/mock/artifacts/app_dependency_scaling.json
@@ -0,0 +1,32 @@
+{
+    "applicationId": "app_group_v1",
+    "alias": "mytestapp1",
+    "components": {
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            },
+            {
+                "type": "php",
+                "cartridgeMin": 2,
+                "cartridgeMax": 4,
+                "subscribableInfo": {
+                    "alias": "myphp",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "scalingDependants": [
+                "cartridge.mytomcat, cartridge.myphp"
+            ],
+            "terminationBehaviour": "terminate-none"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/mock/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/mock/artifacts/autoscale-policy.json b/samples/dependency-scaling/sample-cartridges/mock/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..f065167
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/mock/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_1",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "threshold": 40
+        },
+        "memoryConsumption": {
+            "threshold": 40
+        },
+        "loadAverage": {
+            "threshold": 40
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/mock/artifacts/dep_dependency_scaling.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/mock/artifacts/dep_dependency_scaling.json b/samples/dependency-scaling/sample-cartridges/mock/artifacts/dep_dependency_scaling.json
new file mode 100644
index 0000000..05b3a04
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/mock/artifacts/dep_dependency_scaling.json
@@ -0,0 +1,55 @@
+{
+    "applicationId": "app_group_v1",
+    "applicationPolicy": {
+        "networkPartition": [
+            {
+                "id": "openstack_R1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "mock",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "RegionOne"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "myphp",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 10
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/mock/artifacts/php.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/mock/artifacts/php.json b/samples/dependency-scaling/sample-cartridges/mock/artifacts/php.json
new file mode 100755
index 0000000..272e6e8
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/mock/artifacts/php.json
@@ -0,0 +1,46 @@
+{
+    "type": "php",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "php",
+    "description": "php Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "mock",
+            "imageId": "RegionOne/b4ca55e3-58ab-4937-82ce-817ebd10240e",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "reka"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/mock/artifacts/tomcat.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/mock/artifacts/tomcat.json b/samples/dependency-scaling/sample-cartridges/mock/artifacts/tomcat.json
new file mode 100755
index 0000000..f2c9d5b
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/mock/artifacts/tomcat.json
@@ -0,0 +1,46 @@
+{
+    "type": "tomcat",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcatdisplayName",
+    "description": "tomcat Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "mock",
+            "imageId": "RegionOne/b4ca55e3-58ab-4937-82ce-817ebd10240e",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "reka"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/mock/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/mock/deploy.sh b/samples/dependency-scaling/sample-cartridges/mock/deploy.sh
new file mode 100755
index 0000000..eb4caba
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/mock/deploy.sh
@@ -0,0 +1,19 @@
+#!/bin/sh 
+
+echo "Adding autoscaling policy..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/autoscale-policy.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
+
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+echo "Adding php cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/php.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+sleep 3
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/app_dependency_scaling.json' -k -v -u admin:admin https://localhost:9443/api/applications
+
+sleep 3
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" -d@'artifacts/dep_dependency_scaling.json' -k -v -u admin:admin https://localhost:9443/api/applications/app_group_v1/deploy
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/openstack/artifacts/app_dependency_scaling.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/openstack/artifacts/app_dependency_scaling.json b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/app_dependency_scaling.json
new file mode 100644
index 0000000..97b53be
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/app_dependency_scaling.json
@@ -0,0 +1,32 @@
+{
+    "applicationId": "app_group_v1",
+    "alias": "mytestapp1",
+    "components": {
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            },
+            {
+                "type": "tomcat1",
+                "cartridgeMin": 2,
+                "cartridgeMax": 4,
+                "subscribableInfo": {
+                    "alias": "mytomcat1",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "scalingDependants": [
+                "cartridge.mytomcat, cartridge.mytomcat1"
+            ],
+            "terminationBehaviour": "terminate-none"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/openstack/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/openstack/artifacts/autoscale-policy.json b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..bf2499e
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_1",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "threshold": 40
+        },
+        "memoryConsumption": {
+            "threshold": 70
+        },
+        "loadAverage": {
+            "threshold": 100
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/openstack/artifacts/dep_dependency_scaling.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/openstack/artifacts/dep_dependency_scaling.json b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/dep_dependency_scaling.json
new file mode 100644
index 0000000..67fdcc1
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/dep_dependency_scaling.json
@@ -0,0 +1,56 @@
+{
+    "applicationId": "app_group_v1",
+    "applicationPolicy": {
+        "applicationId": "app_group_v1",
+        "networkPartition": [
+            {
+                "id": "openstack_R1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "openstack",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "RegionOne"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mytomcat1",
+            "networkPartition": [
+                {
+                    "id": "openstack_R1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 10
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat.json b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat.json
new file mode 100755
index 0000000..39afc04
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat.json
@@ -0,0 +1,51 @@
+{
+    "type": "tomcat",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat",
+    "description": "tomcat Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "openstack",
+            "imageId": "RegionOne/a63609be-61df-436f-80bc-d2b6068a4c3a",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "lahiru-key"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat1.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat1.json b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat1.json
new file mode 100755
index 0000000..3976048
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/openstack/artifacts/tomcat1.json
@@ -0,0 +1,52 @@
+{
+    "type": "tomcat1",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat1",
+    "description": "tomcat1 Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "openstack",
+            "imageId": "RegionOne/a63609be-61df-436f-80bc-d2b6068a4c3a",
+            "networkInterfaces": [
+                {
+                    "name": "network-non-routable",
+                    "networkUuid": "b55f009a-1cc6-4b17-924f-4ae0ee18db5e"
+                }
+            ],
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "RegionOne/aa5f45a2-c6d6-419d-917a-9dd2e3888594"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "lahiru-key"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "default"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-cartridges/openstack/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-cartridges/openstack/deploy.sh b/samples/dependency-scaling/sample-cartridges/openstack/deploy.sh
new file mode 100755
index 0000000..7aef755
--- /dev/null
+++ b/samples/dependency-scaling/sample-cartridges/openstack/deploy.sh
@@ -0,0 +1,19 @@
+#!/bin/sh 
+
+echo "Adding autoscaling policy..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/autoscale-policy.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
+
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat1.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+
+sleep 2
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/app_dependency_scaling.json' -k -v -u admin:admin https://localhost:9443/api/applications
+
+sleep 2
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" -d@'artifacts/dep_dependency_scaling.json' -k -v -u admin:admin https://localhost:9443/api/applications/app_group_v1/deploy
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/app_single_group.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/app_single_group.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/app_single_group.json
new file mode 100644
index 0000000..d29a191
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/app_single_group.json
@@ -0,0 +1,52 @@
+{
+    "applicationId": "app_group_v2",
+    "alias": "mytestapp1",
+    "components": {
+        "groups": [
+            {
+                "name": "group6",
+                "alias": "mygroup6",
+                "groupMinInstances": 1,
+                "groupMaxInstances": 2,
+                "cartridges": [
+                    {
+                        "type": "esb",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "esbgroup6",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    },
+                    {
+                        "type": "php",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "phpgroup6",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            }
+        ],
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 2,
+                "cartridgeMax": 4,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "scalingDependants": [
+                "group.mygroup6,cartridge.mytomcat"
+            ],
+            "terminationBehaviour": "terminate-none"
+        }
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/autoscale-policy.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..d1d3134
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_1",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "threshold": 50
+        },
+        "memoryConsumption": {
+            "threshold": 70
+        },
+        "loadAverage": {
+            "threshold": 1000
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/dep_single_group.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/dep_single_group.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/dep_single_group.json
new file mode 100644
index 0000000..1e927ca
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/dep_single_group.json
@@ -0,0 +1,56 @@
+{
+    "applicationId": "app_group_v2",
+    "applicationPolicy": {
+        "networkPartition": [
+            {
+                "id": "EC2-P1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "ec2",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "ap-southeast-1"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup6",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/esb.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/esb.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/esb.json
new file mode 100755
index 0000000..2a44e75
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/esb.json
@@ -0,0 +1,40 @@
+{
+    "type": "esb",
+    "provider": "wso2",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "esb",
+    "description": "esb Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/group6c.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/group6c.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/group6c.json
new file mode 100644
index 0000000..d11c8fc
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/group6c.json
@@ -0,0 +1,15 @@
+{
+    "name": "group6",
+    "isGroupScalingEnabled": "true",
+    "cartridges": [
+        "esb",
+        "php"
+    ],
+    "dependencies": {
+        "startupOrders": [
+            "cartridge.esb,cartridge.php"
+        ],
+        "terminationBehaviour": "terminate-all"
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/php.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/php.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/php.json
new file mode 100755
index 0000000..008c8ff
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/php.json
@@ -0,0 +1,46 @@
+{
+    "type": "php",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "php",
+    "description": "php Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/artifacts/tomcat.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/artifacts/tomcat.json b/samples/dependency-scaling/sample-groups/ec2/artifacts/tomcat.json
new file mode 100755
index 0000000..1779e62
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/artifacts/tomcat.json
@@ -0,0 +1,46 @@
+{
+    "type": "tomcat",
+    "provider": "apache",
+    "category": "data",
+    "host": "isuruh.lk",
+    "displayName": "tomcat",
+    "description": "tomcat Cartridge",
+    "version": "7",
+    "multiTenant": "false",
+    "portMapping": [
+        {
+            "protocol": "http",
+            "port": "22",
+            "proxyPort": "8280"
+        }
+    ],
+    "deployment": {
+    },
+    "iaasProvider": [
+        {
+            "type": "ec2",
+            "imageId": "ap-southeast-1/ami-3c0f5d6e",
+            "maxInstanceLimit": "2",
+            "property": [
+                {
+                    "name": "instanceType",
+                    "value": "m1.medium"
+                },
+                {
+                    "name": "keyPair",
+                    "value": "manula"
+                },
+                {
+                    "name": "securityGroups",
+                    "value": "s2-2.0.0-rc1"
+                }
+            ]
+        }
+    ],
+    "loadBalancer": {
+        "property": {
+            "name": "no.load.balancer",
+            "value": "true"
+        }
+    },
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/ec2/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/ec2/deploy.sh b/samples/dependency-scaling/sample-groups/ec2/deploy.sh
new file mode 100755
index 0000000..3a2e600
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/ec2/deploy.sh
@@ -0,0 +1,17 @@
+#!/bin/sh 
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/autoscale-policy.json' -k -v -u admin:admin https://localhost:9443/api/autoscalingPolicies
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/tomcat.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/esb.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/php.json' -k -v -u admin:admin https://localhost:9443/api/cartridges
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group6c.json' -k -v -u admin:admin https://localhost:9443/api/groups
+
+sleep 3
+
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/app_single_group.json' -k -v -u admin:admin https://localhost:9443/api/applications
+
+sleep 3
+
+curl -X POST -H "Content-Type: application/json" -d@'artifacts/dep_single_group.json' -k -v -u admin:admin https://localhost:9443/api/applications/app_group_v2/deploy
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json b/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json
new file mode 100644
index 0000000..76be30f
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json
@@ -0,0 +1,52 @@
+{
+    "applicationId": "app_group_v2",
+    "alias": "mytestapp1",
+    "components": {
+        "groups": [
+            {
+                "name": "group6",
+                "alias": "mygroup6",
+                "groupMinInstances": 1,
+                "groupMaxInstances": 2,
+                "cartridges": [
+                    {
+                        "type": "esb",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "esbgroup6",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    },
+                    {
+                        "type": "php",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "phpgroup6",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            }
+        ],
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 2,
+                "cartridgeMax": 4,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ],
+        "dependencies": {
+            "scalingDependants": [
+                "group.group6, cartridge.tomcat"
+            ],
+            "terminationBehaviour": "terminate-none"
+        }
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/704db4b7/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json-para
----------------------------------------------------------------------
diff --git a/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json-para b/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json-para
new file mode 100644
index 0000000..3ca673d
--- /dev/null
+++ b/samples/dependency-scaling/sample-groups/mock/artifacts/app_single_group.json-para
@@ -0,0 +1,46 @@
+{
+    "applicationId": "app_group_v1",
+    "alias": "mytestapp1",
+    "components": {
+        "groups" : [
+            {
+                "name": "group6",
+                "alias" : "mygroup6",
+                "groupMinInstances":1,
+                "groupMaxInstances":1,
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "tom2group6",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    },
+                    {
+                        "type": "tomcat1",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "tom1group6",
+                            "autoscalingPolicy": "autoscale_policy_1"
+                        }
+                    }
+                ]
+            }
+        ],
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            }
+        ]
+    }
+}
+