Restructuring the Sample Application
Added undeploying scripts

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

Branch: refs/heads/master
Commit: 1c966cbc676f70c0801c8edb87f84fd77b1d73b6
Parents: 5a3e530
Author: Vishanth <[email protected]>
Authored: Tue Jan 27 14:47:33 2015 +0530
Committer: Imesh Gunaratne <[email protected]>
Committed: Tue Jan 27 18:05:09 2015 +0530

----------------------------------------------------------------------
 .../artifacts/application_definition.json       | 108 ++++++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../complex-app-with-lb/iaases/deploy.sh        |  57 ++++++
 .../mock/artifacts/deployment-policy.json       |  71 +++++++
 .../iaases/mock/artifacts/lb.json               |  46 +++++
 .../complex-app-with-lb/iaases/undeploy.sh      |  33 ++++
 samples/applications/complex-app/README.md      |   6 +
 .../artifacts/application-definition.json       | 128 ++++++++++++
 .../complex-app/artifacts/autoscale-policy.json |  14 ++
 .../iaases/ec2/artifacts/deployment-policy.json |  71 +++++++
 .../complex-app/iaases/ec2/deploy.sh            |  56 ++++++
 .../complex-app/iaases/ec2/undeploy.sh          |  30 +++
 .../kubernetes/artifacts/deployment-policy.json |  72 +++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../complex-app/iaases/kubernetes/deploy.sh     |  66 +++++++
 .../complex-app/iaases/kubernetes/undeploy.sh   |  34 ++++
 .../mock/artifacts/deployment-policy.json       |  71 +++++++
 .../complex-app/iaases/mock/deploy.sh           |  56 ++++++
 .../complex-app/iaases/mock/undeploy.sh         |  30 +++
 .../openstack/artifacts/deployment-policy.json  |  71 +++++++
 .../complex-app/iaases/openstack/deploy.sh      |  56 ++++++
 .../complex-app/iaases/openstack/undeploy.sh    |  30 +++
 .../artifacts/app_dependency_scaling.json       |  44 +++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../ec2/artifacts/dep_dependency_scaling.json   |  56 ++++++
 .../sample-cartridges/iaases/ec2/deploy.sh      |  41 ++++
 .../sample-cartridges/iaases/ec2/undeploy.sh    |  24 +++
 .../artifacts/dep_dependency_scaling.json       |  56 ++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../iaases/kubernetes/deploy.sh                 |  47 +++++
 .../iaases/kubernetes/undeploy.sh               |  28 +++
 .../mock/artifacts/dep_dependency_scaling.json  |  55 ++++++
 .../sample-cartridges/iaases/mock/deploy.sh     |  41 ++++
 .../sample-cartridges/iaases/mock/undeploy.sh   |  24 +++
 .../artifacts/dep_dependency_scaling.json       |  56 ++++++
 .../iaases/openstack/deploy.sh                  |  41 ++++
 .../iaases/openstack/undeploy.sh                |  24 +++
 .../artifacts/app_single_group.json             |  70 +++++++
 .../artifacts/app_single_group.json-para        |  64 ++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/dep_single_group.json  |  56 ++++++
 .../sample-groups/iaases/ec2/deploy.sh          |  53 +++++
 .../sample-groups/iaases/ec2/undeploy.sh        |  29 +++
 .../kubernetes/artifacts/dep_single_group.json  |  57 ++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../sample-groups/iaases/kubernetes/deploy.sh   |  60 ++++++
 .../sample-groups/iaases/kubernetes/undeploy.sh |  33 ++++
 .../iaases/mock/artifacts/dep_single_group.json |  56 ++++++
 .../sample-groups/iaases/mock/deploy.sh         |  53 +++++
 .../sample-groups/iaases/mock/undeploy.sh       |  29 +++
 .../openstack/artifacts/dep_single_group.json   |  56 ++++++
 .../sample-groups/iaases/openstack/deploy.sh    |  53 +++++
 .../sample-groups/iaases/openstack/undeploy.sh  |  29 +++
 .../artifacts/autoscale-policy-c1.json          |  14 ++
 .../artifacts/autoscale-policy-c2.json          |  14 ++
 .../artifacts/autoscale-policy-c3.json          |  14 ++
 .../artifacts/autoscale-policy-c4.json          |  14 ++
 .../artifacts/composite_application.json        |  47 +++++
 .../ec2/artifacts/app_deployment_policy.json    |  67 +++++++
 .../group-scaling-v1/iaases/ec2/deploy.sh       |  69 +++++++
 .../group-scaling-v1/iaases/ec2/undeploy.sh     |  33 ++++
 .../artifacts/app_deployment_policy.json        |  68 +++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../iaases/kubernetes/deploy.sh                 |  77 ++++++++
 .../iaases/kubernetes/undeploy.sh               |  37 ++++
 .../mock/artifacts/app_deployment_policy.json   |  67 +++++++
 .../group-scaling-v1/iaases/mock/deploy.sh      |  67 +++++++
 .../group-scaling-v1/iaases/mock/undeploy.sh    |  33 ++++
 .../artifacts/app_deployment_policy.json        |  67 +++++++
 .../group-scaling-v1/iaases/openstack/deploy.sh |  66 +++++++
 .../iaases/openstack/undeploy.sh                |  33 ++++
 .../artifacts/autoscale-policy-c1.json          |  14 ++
 .../artifacts/autoscale-policy-c2.json          |  14 ++
 .../artifacts/autoscale-policy-c3.json          |  14 ++
 .../artifacts/autoscale-policy-c4.json          |  14 ++
 .../artifacts/composite_application.json        |  95 +++++++++
 .../ec2/artifacts/app_deployment_policy.json    |  71 +++++++
 .../group-scaling/iaases/ec2/deploy.sh          |  69 +++++++
 .../group-scaling/iaases/ec2/undeploy.sh        |  34 ++++
 .../artifacts/app_deployment_policy.json        |  72 +++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../group-scaling/iaases/kubernetes/deploy.sh   |  78 ++++++++
 .../group-scaling/iaases/kubernetes/undeploy.sh |  38 ++++
 .../mock/artifacts/app_deployment_policy.json   |  71 +++++++
 .../group-scaling/iaases/mock/deploy.sh         |  69 +++++++
 .../group-scaling/iaases/mock/undeploy.sh       |  34 ++++
 .../artifacts/app_deployment_policy.json        |  71 +++++++
 .../group-scaling/iaases/openstack/deploy.sh    |  69 +++++++
 .../group-scaling/iaases/openstack/undeploy.sh  |  34 ++++
 samples/applications/more-complex-app/README.md |  11 ++
 .../artifacts/application_definition.json       | 196 +++++++++++++++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/deployment-policy.json |  87 ++++++++
 .../more-complex-app/iaases/ec2/deploy.sh       |  57 ++++++
 .../more-complex-app/iaases/ec2/undeploy.sh     |  30 +++
 .../kubernetes/artifacts/deployment-policy.json |  88 +++++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../iaases/kubernetes/deploy.sh                 |  66 +++++++
 .../iaases/kubernetes/undeploy.sh               |  34 ++++
 .../mock/artifacts/deployment-policy.json       |  87 ++++++++
 .../more-complex-app/iaases/mock/deploy.sh      |  57 ++++++
 .../more-complex-app/iaases/mock/undeploy.sh    |  30 +++
 .../openstack/artifacts/deployment-policy.json  |  87 ++++++++
 .../more-complex-app/iaases/openstack/deploy.sh |  57 ++++++
 .../iaases/openstack/undeploy.sh                |  30 +++
 samples/applications/nested-group/README.md     |   8 +
 .../artifacts/application-definition.json       |  80 ++++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/deployment-policy.json |  55 ++++++
 .../nested-group/iaases/ec2/deploy.sh           |  53 +++++
 .../nested-group/iaases/ec2/undeploy.sh         |  29 +++
 .../kubernetes/artifacts/deployment-policy.json |  56 ++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../nested-group/iaases/kubernetes/deploy.sh    |  61 ++++++
 .../nested-group/iaases/kubernetes/undeploy.sh  |  33 ++++
 .../mock/artifacts/deployment-policy.json       |  55 ++++++
 .../nested-group/iaases/mock/deploy.sh          |  53 +++++
 .../nested-group/iaases/mock/undeploy.sh        |  29 +++
 .../openstack/artifacts/deployment-policy.json  |  55 ++++++
 .../nested-group/iaases/openstack/deploy.sh     |  53 +++++
 .../nested-group/iaases/openstack/undeploy.sh   |  29 +++
 samples/applications/single-cartridge/README.md |   8 +
 .../artifacts/application-signup.json           |  18 ++
 .../single-cartridge/artifacts/application.json |  24 +++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../artifacts/domain-mappings.json              |   9 +
 .../artifacts/network-partition.json            |  16 ++
 .../iaases/ec2/artifacts/dep_single_group.json  |  41 ++++
 .../single-cartridge/iaases/ec2/deploy.sh       |  39 ++++
 .../single-cartridge/iaases/ec2/undeploy.sh     |  23 +++
 .../kubernetes/artifacts/deployment-policy.json |  40 ++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../iaases/kubernetes/deploy.sh                 |  45 +++++
 .../iaases/kubernetes/get-application.sh        |   3 +
 .../iaases/kubernetes/get-deployment-policy.sh  |   3 +
 .../iaases/kubernetes/list-applications.sh      |   3 +
 .../iaases/kubernetes/undeploy.sh               |  27 +++
 .../iaases/mock/add-domain-mappings.sh          |   9 +
 .../iaases/mock/add-network-partition.sh        |   9 +
 .../mock/artifacts/deployment-policy.json       |  41 ++++
 .../single-cartridge/iaases/mock/deploy.sh      |  39 ++++
 .../iaases/mock/list-domain-mappings.sh         |   2 +
 .../iaases/mock/list-network-partition.sh       |   2 +
 .../single-cartridge/iaases/mock/undeploy.sh    |  23 +++
 .../openstack/artifacts/dep_single_group.json   |  41 ++++
 .../single-cartridge/iaases/openstack/deploy.sh |  39 ++++
 .../iaases/openstack/undeploy.sh                |  23 +++
 .../artifacts/app_single_group.json             |  32 +++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/dep_single_group.json  |  41 ++++
 .../iaases/ec2/deploy.sh                        |  46 +++++
 .../iaases/ec2/undeploy.sh                      |  27 +++
 .../kubernetes/artifacts/dep_single_group.json  |  42 ++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../iaases/kubernetes/deploy.sh                 |  54 +++++
 .../iaases/kubernetes/undeploy.sh               |  31 +++
 .../iaases/mock/artifacts/dep_single_group.json |  41 ++++
 .../iaases/mock/deploy.sh                       |  46 +++++
 .../iaases/mock/undeploy.sh                     |  27 +++
 .../openstack/artifacts/dep_single_group.json   |  41 ++++
 .../iaases/openstack/deploy.sh                  |  46 +++++
 .../iaases/openstack/undeploy.sh                |  27 +++
 samples/applications/single-group-v1/README.md  |   7 +
 .../artifacts/app_single_group.json             |  55 ++++++
 .../artifacts/app_single_group.json-para        |  64 ++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/dep_single_group.json  |  56 ++++++
 .../single-group-v1/iaases/ec2/deploy.sh        |  53 +++++
 .../single-group-v1/iaases/ec2/undeploy.sh      |  29 +++
 .../kubernetes/artifacts/dep_single_group.json  |  57 ++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../single-group-v1/iaases/kubernetes/deploy.sh |  61 ++++++
 .../iaases/kubernetes/undeploy.sh               |  33 ++++
 .../iaases/mock/artifacts/dep_single_group.json |  56 ++++++
 .../single-group-v1/iaases/mock/deploy.sh       |  52 +++++
 .../single-group-v1/iaases/mock/undeploy.sh     |  29 +++
 .../openstack/artifacts/dep_single_group.json   |  56 ++++++
 .../single-group-v1/iaases/openstack/deploy.sh  |  53 +++++
 .../iaases/openstack/undeploy.sh                |  29 +++
 samples/applications/single-group-v2/README.md  |   7 +
 .../artifacts/app_single_group.json             |  70 +++++++
 .../artifacts/app_single_group.json-para        |  64 ++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/dep_single_group.json  |  56 ++++++
 .../single-group-v2/iaases/ec2/deploy.sh        |  53 +++++
 .../single-group-v2/iaases/ec2/undeploy.sh      |  29 +++
 .../kubernetes/artifacts/dep_single_group.json  |  57 ++++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../single-group-v2/iaases/kubernetes/deploy.sh |  61 ++++++
 .../iaases/kubernetes/undeploy.sh               |  33 ++++
 .../iaases/mock/artifacts/dep_single_group.json |  56 ++++++
 .../single-group-v2/iaases/mock/deploy.sh       |  53 +++++
 .../single-group-v2/iaases/mock/undeploy.sh     |  29 +++
 .../openstack/artifacts/dep_single_group.json   |  56 ++++++
 .../single-group-v2/iaases/openstack/deploy.sh  |  53 +++++
 .../iaases/openstack/undeploy.sh                |  29 +++
 .../artifacts/app_single_group.json             |  33 ++++
 .../artifacts/app_single_group.json-para        |  64 ++++++
 .../artifacts/autoscale-policy.json             |  14 ++
 .../iaases/ec2/artifacts/dep_single_group.json  |  41 ++++
 .../single-group-v3/iaases/ec2/deploy.sh        |  53 +++++
 .../single-group-v3/iaases/ec2/undeploy.sh      |  29 +++
 .../kubernetes/artifacts/dep_single_group.json  |  42 ++++
 .../artifacts/kubernetes-cluster.json           |  55 ++++++
 .../single-group-v3/iaases/kubernetes/deploy.sh |  62 ++++++
 .../iaases/kubernetes/undeploy.sh               |  33 ++++
 .../iaases/mock/artifacts/app_single_group.json |  27 +++
 .../mock/artifacts/app_single_group.json-para   |  46 +++++
 .../iaases/mock/artifacts/autoscale-policy.json |  14 ++
 .../iaases/mock/artifacts/dep_single_group.json |  41 ++++
 .../iaases/mock/artifacts/group6c.json          |  11 ++
 .../iaases/mock/artifacts/tomcat.json           |  46 +++++
 .../iaases/mock/artifacts/tomcat1.json          |  46 +++++
 .../iaases/mock/artifacts/tomcat2.json          |  46 +++++
 .../single-group-v3/iaases/mock/deploy.sh       |  53 +++++
 .../single-group-v3/iaases/mock/undeploy.sh     |  29 +++
 .../openstack/artifacts/dep_single_group.json   |  41 ++++
 .../single-group-v3/iaases/openstack/deploy.sh  |  53 +++++
 .../iaases/openstack/undeploy.sh                |  29 +++
 samples/cartridges-groups/group1.json           |  35 ++++
 samples/cartridges-groups/group1b.json          |  18 ++
 samples/cartridges-groups/group6c.json          |  21 ++
 samples/cartridges-groups/group6c2.json         |  15 ++
 samples/cartridges-groups/group6c3.json         |  34 ++++
 samples/cartridges-groups/group6c4.json         |  11 ++
 samples/cartridges-groups/group6c5.json         |  11 ++
 samples/cartridges-groups/group6c6.json         |  14 ++
 samples/cartridges-groups/group8c.json          |  21 ++
 samples/cartridges-groups/group8c3.json         |  23 +++
 samples/cartridges/ec2/c1.json                  |  40 ++++
 samples/cartridges/ec2/c2.json                  |  40 ++++
 samples/cartridges/ec2/c3.json                  |  40 ++++
 samples/cartridges/ec2/c4.json                  |  40 ++++
 samples/cartridges/ec2/esb.json                 |  40 ++++
 samples/cartridges/ec2/php.json                 |  40 ++++
 samples/cartridges/ec2/tomcat.json              |  40 ++++
 samples/cartridges/ec2/tomcat1.json             |  41 ++++
 samples/cartridges/ec2/tomcat2.json             |  41 ++++
 samples/cartridges/kubernetes/c1.json           |  46 +++++
 samples/cartridges/kubernetes/c2.json           |  46 +++++
 samples/cartridges/kubernetes/c3.json           |  46 +++++
 samples/cartridges/kubernetes/c4.json           |  46 +++++
 samples/cartridges/kubernetes/esb.json          |  34 ++++
 samples/cartridges/kubernetes/php.json          |  34 ++++
 samples/cartridges/kubernetes/tomcat.json       |  34 ++++
 samples/cartridges/kubernetes/tomcat1.json      |  34 ++++
 samples/cartridges/kubernetes/tomcat2.json      |  34 ++++
 samples/cartridges/mock/c1.json                 |  46 +++++
 samples/cartridges/mock/c2.json                 |  46 +++++
 samples/cartridges/mock/c3.json                 |  46 +++++
 samples/cartridges/mock/c4.json                 |  46 +++++
 samples/cartridges/mock/esb.json                |  46 +++++
 samples/cartridges/mock/php.json                |  46 +++++
 samples/cartridges/mock/tomcat.json             |  46 +++++
 samples/cartridges/mock/tomcat1.json            |  46 +++++
 samples/cartridges/mock/tomcat2.json            |  46 +++++
 samples/cartridges/openstack/c1.json            |  46 +++++
 samples/cartridges/openstack/c2.json            |  46 +++++
 samples/cartridges/openstack/c3.json            |  46 +++++
 samples/cartridges/openstack/c4.json            |  46 +++++
 samples/cartridges/openstack/esb.json           |  45 +++++
 samples/cartridges/openstack/php.json           |  46 +++++
 samples/cartridges/openstack/tomcat.json        |  46 +++++
 samples/cartridges/openstack/tomcat1.json       |  47 +++++
 samples/cartridges/openstack/tomcat2.json       |  47 +++++
 265 files changed, 11366 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app-with-lb/artifacts/application_definition.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app-with-lb/artifacts/application_definition.json
 
b/samples/applications/complex-app-with-lb/artifacts/application_definition.json
new file mode 100644
index 0000000..c1262c2
--- /dev/null
+++ 
b/samples/applications/complex-app-with-lb/artifacts/application_definition.json
@@ -0,0 +1,108 @@
+{
+    "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": "lb",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mylb",
+                    "autoscalingPolicy": "autoscale_policy_1"
+                }
+            },
+            {
+                "type": "tomcat2",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                     "alias": "mytomcat",
+                     "autoscalingPolicy": "autoscale_policy_1"
+                }
+             }
+
+        ],
+        "dependencies": {
+            "startupOrders": [
+                "cartridge.tomcat2,cartridge.lb,group.group6"
+            ],
+            "terminationBehaviour": "terminate-all"
+        }
+    }
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app-with-lb/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app-with-lb/artifacts/autoscale-policy.json 
b/samples/applications/complex-app-with-lb/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..a921663
--- /dev/null
+++ b/samples/applications/complex-app-with-lb/artifacts/autoscale-policy.json
@@ -0,0 +1,14 @@
+{
+    "id": "autoscale_policy_2",
+    "loadThresholds": {
+        "requestsInFlight": {
+            "threshold": 80
+        },
+        "memoryConsumption": {
+            "threshold": 90
+        },
+        "loadAverage": {
+            "threshold": 50
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app-with-lb/iaases/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app-with-lb/iaases/deploy.sh 
b/samples/applications/complex-app-with-lb/iaases/deploy.sh
new file mode 100755
index 0000000..a63308d
--- /dev/null
+++ b/samples/applications/complex-app-with-lb/iaases/deploy.sh
@@ -0,0 +1,57 @@
+#!/bin/sh 
+
+export iaas="mock"                                             #[openstack, 
ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../cartridges/${iaas}"
+export cartridges_groups_path="../../../../cartridges-groups"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding load balancer
+echo "Adding load balancer..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/lb.json' -k -v 
-u admin:admin https://${host_ip}:9443/api/cartridges
+
+# Adding cartridges
+pushd ${cartridges_path}
+    # Adding tomcat1 cartridge
+    echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat1.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+    # Adding tomcat2 cartridge
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat2.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+
+# Adding groups
+pushd ${cartridges_groups_path}
+       # Adding group6c
+echo "Adding group6c group..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group6c.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/cartridgeGroups
+
+       # Adding group8c
+echo "Adding group8c group..."
+curl -X POST -H "Content-Type: application/json" -d @'artifacts/group8c.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/cartridgeGroups
+popd
+
+sleep 5
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'application_definition.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 3
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/deployment-policy.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app-with-lb/iaases/mock/artifacts/deployment-policy.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app-with-lb/iaases/mock/artifacts/deployment-policy.json
 
b/samples/applications/complex-app-with-lb/iaases/mock/artifacts/deployment-policy.json
new file mode 100644
index 0000000..7ce7fd7
--- /dev/null
+++ 
b/samples/applications/complex-app-with-lb/iaases/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": "mylb",
+            "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/1c966cbc/samples/applications/complex-app-with-lb/iaases/mock/artifacts/lb.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app-with-lb/iaases/mock/artifacts/lb.json 
b/samples/applications/complex-app-with-lb/iaases/mock/artifacts/lb.json
new file mode 100755
index 0000000..9dd9b4a
--- /dev/null
+++ b/samples/applications/complex-app-with-lb/iaases/mock/artifacts/lb.json
@@ -0,0 +1,46 @@
+{
+    "type": "lb",
+    "provider": "apache",
+    "category": "lb",
+    "host": "isuruh.lk",
+    "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/1c966cbc/samples/applications/complex-app-with-lb/iaases/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app-with-lb/iaases/undeploy.sh 
b/samples/applications/complex-app-with-lb/iaases/undeploy.sh
new file mode 100755
index 0000000..c6a3a1a
--- /dev/null
+++ b/samples/applications/complex-app-with-lb/iaases/undeploy.sh
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/undeploy
+
+sleep 5
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo
+
+# Removing groups
+echo "Removing groups..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group8
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group6
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat1
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat2
+
+# Removing load balancer
+echo "Removing load balancer..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/lb
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/README.md
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/README.md 
b/samples/applications/complex-app/README.md
new file mode 100644
index 0000000..117e787
--- /dev/null
+++ b/samples/applications/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/1c966cbc/samples/applications/complex-app/artifacts/application-definition.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app/artifacts/application-definition.json 
b/samples/applications/complex-app/artifacts/application-definition.json
new file mode 100644
index 0000000..caa9668
--- /dev/null
+++ b/samples/applications/complex-app/artifacts/application-definition.json
@@ -0,0 +1,128 @@
+{
+    "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",
+                                    "artifactRepository":{
+                                       "privateRepo":false,
+                                       
"repoUrl":"https://github.com/imesh/stratos-tomcat1-applications.git";,
+                                       "repoUsername":"",
+                                       "repoPassword":""
+                                    }
+                                }
+                            }
+                        ]
+                    }
+                ],
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "group6tom",
+                            "autoscalingPolicy": "autoscale_policy_1",
+                            "artifactRepository":{
+                               "privateRepo":false,
+                               
"repoUrl":"https://github.com/imesh/stratos-tomcat2-applications.git";,
+                               "repoUsername":"",
+                               "repoPassword":""
+                            }
+                        }
+                    }
+                ]
+            },
+            {
+                "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",
+                                    "artifactRepository":{
+                                       "privateRepo":false,
+                                       
"repoUrl":"https://github.com/imesh/stratos-tomcat1-applications.git";,
+                                       "repoUsername":"",
+                                       "repoPassword":""
+                                    }
+                                }
+                            }
+                        ]
+                    }
+                ],
+                "cartridges": [
+                    {
+                        "type": "tomcat2",
+                        "cartridgeMin": 1,
+                        "cartridgeMax": 2,
+                        "subscribableInfo": {
+                            "alias": "group8tom",
+                            "autoscalingPolicy": "autoscale_policy_1",
+                            "artifactRepository":{
+                               "privateRepo":false,
+                               
"repoUrl":"https://github.com/imesh/stratos-tomcat2-applications.git";,
+                               "repoUsername":"",
+                               "repoPassword":""
+                            }
+                        }
+                    }
+                ]
+            }
+        ],
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1",
+                    "artifactRepository":{
+                       "privateRepo":false,
+                       
"repoUrl":"https://github.com/imesh/stratos-tomcat-applications.git";,
+                       "repoUsername":"",
+                       "repoPassword":""
+                    }
+                }
+            }
+        ],
+        "dependencies": {
+            "startupOrders": [
+                "group.group8,cartridge.tomcat,group.group6"
+            ],
+            "terminationBehaviour": "terminate-all"
+        }
+    }
+}
+

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

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/ec2/artifacts/deployment-policy.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app/iaases/ec2/artifacts/deployment-policy.json 
b/samples/applications/complex-app/iaases/ec2/artifacts/deployment-policy.json
new file mode 100644
index 0000000..2aac579
--- /dev/null
+++ 
b/samples/applications/complex-app/iaases/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/1c966cbc/samples/applications/complex-app/iaases/ec2/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/ec2/deploy.sh 
b/samples/applications/complex-app/iaases/ec2/deploy.sh
new file mode 100755
index 0000000..d38d611
--- /dev/null
+++ b/samples/applications/complex-app/iaases/ec2/deploy.sh
@@ -0,0 +1,56 @@
+#!/bin/sh 
+
+export iaas="ec2"                                              #[openstack, 
ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../cartridges/${iaas}"
+export cartridges_groups_path="../../../../cartridges-groups"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat1 cartridge
+echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat1.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat2 cartridge
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat2.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+# Adding groups
+pushd ${cartridges_groups_path}
+       # Adding group6c
+echo "Adding group6c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group6c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+
+       # Adding group8c
+echo "Adding group8c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group8c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+popd
+
+sleep 5
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'application-definition.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 5
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/deployment-policy.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/ec2/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/ec2/undeploy.sh 
b/samples/applications/complex-app/iaases/ec2/undeploy.sh
new file mode 100644
index 0000000..16209a9
--- /dev/null
+++ b/samples/applications/complex-app/iaases/ec2/undeploy.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/undeploy
+
+sleep 10
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo
+
+# Removing groups
+echo "Removing groups..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group8
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group6
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat1
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat2
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/kubernetes/artifacts/deployment-policy.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app/iaases/kubernetes/artifacts/deployment-policy.json
 
b/samples/applications/complex-app/iaases/kubernetes/artifacts/deployment-policy.json
new file mode 100644
index 0000000..82a3b40
--- /dev/null
+++ 
b/samples/applications/complex-app/iaases/kubernetes/artifacts/deployment-policy.json
@@ -0,0 +1,72 @@
+{
+    "applicationId": "app_boo",
+    "applicationPolicy": {
+        "networkPartition": [
+            {
+                "id":"network-p1",
+                "kubernetesClusterId":"kubernetes-cluster-1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "mock",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "default"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "network-p1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup6",
+            "networkPartition": [
+                {
+                    "id": "network-p1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "mygroup8",
+            "networkPartition": [
+                {
+                    "id": "network-p1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/kubernetes/artifacts/kubernetes-cluster.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app/iaases/kubernetes/artifacts/kubernetes-cluster.json
 
b/samples/applications/complex-app/iaases/kubernetes/artifacts/kubernetes-cluster.json
new file mode 100644
index 0000000..228eeb3
--- /dev/null
+++ 
b/samples/applications/complex-app/iaases/kubernetes/artifacts/kubernetes-cluster.json
@@ -0,0 +1,55 @@
+{
+      "clusterId": "kubernetes-cluster-1",
+      "description": "Kubernetes CoreOS cluster",
+      "kubernetesMaster": {
+                  "hostId" : "KubHostMaster1",
+                  "hostname" : "master.dev.kubernetes.example.org",
+                  "hostIpAddress" : "172.17.8.100",
+                  "property" : [
+                  ]
+        },
+
+        "portRange" : {
+           "upper": "5000",
+           "lower": "4500"
+        },
+
+        "kubernetesHosts": [
+              {
+                     "hostId" : "KubHostSlave1",
+                     "hostname" : "slave1.dev.kubernetes.example.org",
+                     "hostIpAddress" : "172.17.8.101",
+                     "property" : [
+                     ]
+                },
+                {
+                     "hostId" : "KubHostSlave2",
+                     "hostname" : "slave2.dev.kubernetes.example.org",
+                     "hostIpAddress" : "172.17.8.102",
+                     "property" : [
+                     ]
+                }
+    ],
+    "property":[
+       {
+          "name":"payload_parameter.MB_IP",
+          "value":"172.17.8.1"
+       },
+       {
+          "name":"payload_parameter.MB_PORT",
+          "value":"1883"
+       },
+       {
+          "name":"payload_parameter.CEP_IP",
+          "value":"172.17.8.1"
+       },
+       {
+          "name":"payload_parameter.CEP_PORT",
+          "value":"7711"
+       },
+       {
+          "name":"payload_parameter.LOG_LEVEL",
+          "value":"DEBUG"
+       }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/kubernetes/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/kubernetes/deploy.sh 
b/samples/applications/complex-app/iaases/kubernetes/deploy.sh
new file mode 100755
index 0000000..ef5a074
--- /dev/null
+++ b/samples/applications/complex-app/iaases/kubernetes/deploy.sh
@@ -0,0 +1,66 @@
+#!/bin/sh
+
+export iaas="ec2"                                              #[openstack, 
ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../cartridges/${iaas}"
+export cartridges_groups_path="../../../../cartridges-groups"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat1 cartridge
+echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat1.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat2 cartridge
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat2.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+
+sleep 5
+
+# Adding kubernetes cluster
+echo "Adding kubernetes cluster..."
+curl -X POST -H "Content-Type: application/json" -d 
@'artifacts/kubernetes-cluster.json' -k -u admin:admin 
https://${host_ip}:9443/api/kubernetesClusters
+
+sleep 2
+
+
+# Adding groups
+pushd ${cartridges_groups_path}
+       # Adding group6c
+echo "Adding group6c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group6c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+
+       # Adding group8c
+echo "Adding group8c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group8c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+popd
+
+sleep 5
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'application-definition.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 5
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/deployment-policy.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/kubernetes/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/kubernetes/undeploy.sh 
b/samples/applications/complex-app/iaases/kubernetes/undeploy.sh
new file mode 100644
index 0000000..8b2c07b
--- /dev/null
+++ b/samples/applications/complex-app/iaases/kubernetes/undeploy.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/undeploy
+
+sleep 5
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo
+
+# Removing groups
+echo "Removing groups..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group8
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group6
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat1
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat2
+
+# Removing kubernetes
+echo "Removing kubernetes cluster..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/kubernetesClusters/kubernetes-cluster-1
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/mock/artifacts/deployment-policy.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/complex-app/iaases/mock/artifacts/deployment-policy.json 
b/samples/applications/complex-app/iaases/mock/artifacts/deployment-policy.json
new file mode 100644
index 0000000..a2d0e3a
--- /dev/null
+++ 
b/samples/applications/complex-app/iaases/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/1c966cbc/samples/applications/complex-app/iaases/mock/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/mock/deploy.sh 
b/samples/applications/complex-app/iaases/mock/deploy.sh
new file mode 100755
index 0000000..11d0707
--- /dev/null
+++ b/samples/applications/complex-app/iaases/mock/deploy.sh
@@ -0,0 +1,56 @@
+#!/bin/sh 
+
+export iaas="mock"                                             #[openstack, 
ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../cartridges/${iaas}"
+export cartridges_groups_path="../../../../cartridges-groups"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat1 cartridge
+echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat1.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat2 cartridge
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat2.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+# Adding groups
+pushd ${cartridges_groups_path}
+       # Adding group6c
+echo "Adding group6c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group6c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+
+       # Adding group8c
+echo "Adding group8c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group8c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+popd
+
+sleep 5
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'application-definition.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 5
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/deployment-policy.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/mock/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/mock/undeploy.sh 
b/samples/applications/complex-app/iaases/mock/undeploy.sh
new file mode 100644
index 0000000..3fe27b3
--- /dev/null
+++ b/samples/applications/complex-app/iaases/mock/undeploy.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/undeploy
+
+sleep 5
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo
+
+# Removing groups
+echo "Removing groups..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group8
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group6
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat1
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat2
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1
\ No newline at end of file

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

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/openstack/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/openstack/deploy.sh 
b/samples/applications/complex-app/iaases/openstack/deploy.sh
new file mode 100755
index 0000000..d4aa68a
--- /dev/null
+++ b/samples/applications/complex-app/iaases/openstack/deploy.sh
@@ -0,0 +1,56 @@
+#!/bin/sh 
+
+export iaas="openstack"                                                
#[openstack, ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../cartridges/${iaas}"
+export cartridges_groups_path="../../../../cartridges-groups"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat1 cartridge
+echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat1.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding tomcat2 cartridge
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat2.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+# Adding groups
+pushd ${cartridges_groups_path}
+       # Adding group6c
+echo "Adding group6c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group6c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+
+       # Adding group8c
+echo "Adding group8c group..."
+curl -X POST -H "Content-Type: application/json" -d @'group8c.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridgeGroups
+popd
+
+sleep 5
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'application-definition.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 5
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/deployment-policy.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/deploy

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/complex-app/iaases/openstack/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/complex-app/iaases/openstack/undeploy.sh 
b/samples/applications/complex-app/iaases/openstack/undeploy.sh
new file mode 100644
index 0000000..8b27fe2
--- /dev/null
+++ b/samples/applications/complex-app/iaases/openstack/undeploy.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo/undeploy
+
+sleep 30
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_boo
+
+# Removing groups
+echo "Removing groups..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group8
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridgeGroups/group6
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat1
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat2
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/artifacts/app_dependency_scaling.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/artifacts/app_dependency_scaling.json
 
b/samples/applications/dependency-scaling/sample-cartridges/artifacts/app_dependency_scaling.json
new file mode 100644
index 0000000..0d8a9d2
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/artifacts/app_dependency_scaling.json
@@ -0,0 +1,44 @@
+{
+    "applicationId": "app_group_v1",
+    "alias": "mytestapp1",
+    "components": {
+        "cartridges": [
+            {
+                "type": "tomcat",
+                "cartridgeMin": 1,
+                "cartridgeMax": 2,
+                "subscribableInfo": {
+                    "alias": "mytomcat",
+                    "autoscalingPolicy": "autoscale_policy_1",
+                    "artifactRepository":{
+                        "privateRepo":false,
+                        
"repoUrl":"https://github.com/imesh/stratos-tomcat-applications.git";,
+                        "repoUsername":"",
+                        "repoPassword":""
+                    }
+                }
+            },
+            {
+                "type": "php",
+                "cartridgeMin": 2,
+                "cartridgeMax": 4,
+                "subscribableInfo": {
+                    "alias": "myphp",
+                    "autoscalingPolicy": "autoscale_policy_1",
+                    "artifactRepository":{
+                        "privateRepo":false,
+                        
"repoUrl":"https://github.com/imesh/stratos-php-applications.git";,
+                        "repoUsername":"",
+                        "repoPassword":""
+                    }
+                }
+            }
+        ],
+        "dependencies": {
+            "scalingDependants": [
+                "cartridge.tomcat, cartridge.php"
+            ],
+            "terminationBehaviour": "terminate-none"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/artifacts/autoscale-policy.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/artifacts/autoscale-policy.json
 
b/samples/applications/dependency-scaling/sample-cartridges/artifacts/autoscale-policy.json
new file mode 100755
index 0000000..f065167
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/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/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/artifacts/dep_dependency_scaling.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/artifacts/dep_dependency_scaling.json
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/artifacts/dep_dependency_scaling.json
new file mode 100644
index 0000000..1fa241f
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/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": "myphp",
+            "networkPartition": [
+                {
+                    "id": "EC2-P1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 10
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/deploy.sh
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/deploy.sh
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/deploy.sh
new file mode 100755
index 0000000..91f08b3
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/deploy.sh
@@ -0,0 +1,41 @@
+#!/bin/sh 
+
+export iaas="ec2"                                              #[openstack, 
ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../../cartridges/${iaas}"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+    # Adding php cartridge
+echo "Adding php cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'php.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+sleep 2
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'app_dependency_scaling.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 2
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/dep_dependency_scaling.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1/deploy
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/undeploy.sh
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/undeploy.sh
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/undeploy.sh
new file mode 100644
index 0000000..c513607
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/ec2/undeploy.sh
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1/undeploy
+
+sleep 30
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/php
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/dep_dependency_scaling.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/dep_dependency_scaling.json
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/dep_dependency_scaling.json
new file mode 100644
index 0000000..5cbf891
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/dep_dependency_scaling.json
@@ -0,0 +1,56 @@
+{
+    "applicationId": "app_group_v1",
+    "applicationPolicy": {
+        "networkPartition": [
+            {
+                "id":"network-p1",
+                "kubernetesClusterId":"kubernetes-cluster-1",
+                "activeByDefault": "true",
+                "partitions": [
+                    {
+                        "id": "P1",
+                        "provider": "kubernetes",
+                        "property": [
+                            {
+                                "name": "region",
+                                "value": "default"
+                            }
+                        ]
+                    }
+                ]
+            }
+        ]
+    },
+    "childPolicies": [
+        {
+            "alias": "mytomcat",
+            "networkPartition": [
+                {
+                    "id": "network-p1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 5
+                        }
+                    ]
+                }
+            ]
+        },
+        {
+            "alias": "myphp",
+            "networkPartition": [
+                {
+                    "id": "network-p1",
+                    "partitionAlgo": "one-after-another",
+                    "partitions": [
+                        {
+                            "id": "P1",
+                            "max": 10
+                        }
+                    ]
+                }
+            ]
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/kubernetes-cluster.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/kubernetes-cluster.json
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/kubernetes-cluster.json
new file mode 100644
index 0000000..228eeb3
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/artifacts/kubernetes-cluster.json
@@ -0,0 +1,55 @@
+{
+      "clusterId": "kubernetes-cluster-1",
+      "description": "Kubernetes CoreOS cluster",
+      "kubernetesMaster": {
+                  "hostId" : "KubHostMaster1",
+                  "hostname" : "master.dev.kubernetes.example.org",
+                  "hostIpAddress" : "172.17.8.100",
+                  "property" : [
+                  ]
+        },
+
+        "portRange" : {
+           "upper": "5000",
+           "lower": "4500"
+        },
+
+        "kubernetesHosts": [
+              {
+                     "hostId" : "KubHostSlave1",
+                     "hostname" : "slave1.dev.kubernetes.example.org",
+                     "hostIpAddress" : "172.17.8.101",
+                     "property" : [
+                     ]
+                },
+                {
+                     "hostId" : "KubHostSlave2",
+                     "hostname" : "slave2.dev.kubernetes.example.org",
+                     "hostIpAddress" : "172.17.8.102",
+                     "property" : [
+                     ]
+                }
+    ],
+    "property":[
+       {
+          "name":"payload_parameter.MB_IP",
+          "value":"172.17.8.1"
+       },
+       {
+          "name":"payload_parameter.MB_PORT",
+          "value":"1883"
+       },
+       {
+          "name":"payload_parameter.CEP_IP",
+          "value":"172.17.8.1"
+       },
+       {
+          "name":"payload_parameter.CEP_PORT",
+          "value":"7711"
+       },
+       {
+          "name":"payload_parameter.LOG_LEVEL",
+          "value":"DEBUG"
+       }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/deploy.sh
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/deploy.sh
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/deploy.sh
new file mode 100755
index 0000000..b1cfe3b
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/deploy.sh
@@ -0,0 +1,47 @@
+#!/bin/sh
+
+export iaas="kubernetes"                                               
#[openstack, ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../../cartridges/${iaas}"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+    # Adding php cartridge
+echo "Adding php cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'php.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+sleep 3
+
+# Adding kubernetes cluster
+echo "Adding kubernetes cluster..."
+curl -X POST -H "Content-Type: application/json" -d 
@'artifacts/kubernetes-cluster.json' -k -u admin:admin 
https://${host_ip}:9443/api/kubernetesClusters
+
+sleep 2
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'app_dependency_scaling.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 3
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/dep_dependency_scaling.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1/deploy
+

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/undeploy.sh
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/undeploy.sh
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/undeploy.sh
new file mode 100644
index 0000000..b0980ee
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/kubernetes/undeploy.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+export host_ip="localhost"
+
+set -e
+
+# Undeploying application
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1/undeploy
+
+sleep 5
+
+# Deleting application
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1
+
+# Removing cartridges
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/cartridges/php
+
+# Removing kubernetes
+echo "Removing kubernetes cluster..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/kubernetesClusters/kubernetes-cluster-1
+
+# Removing autoscale policies
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin 
https://${host_ip}:9443/api/autoscalingPolicies/autoscale_policy_1

http://git-wip-us.apache.org/repos/asf/stratos/blob/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/artifacts/dep_dependency_scaling.json
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/artifacts/dep_dependency_scaling.json
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/artifacts/dep_dependency_scaling.json
new file mode 100644
index 0000000..05b3a04
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/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/1c966cbc/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/deploy.sh
----------------------------------------------------------------------
diff --git 
a/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/deploy.sh
 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/deploy.sh
new file mode 100755
index 0000000..6b16c20
--- /dev/null
+++ 
b/samples/applications/dependency-scaling/sample-cartridges/iaases/mock/deploy.sh
@@ -0,0 +1,41 @@
+#!/bin/sh 
+
+export iaas="ec2"                                              #[openstack, 
ec2, mock, kubernetes]
+export host_ip="localhost"
+
+export artifacts_path="../../artifacts"
+export cartridges_path="../../../../../cartridges/${iaas}"
+
+set -e
+
+# Adding autoscale policy
+pushd ${artifacts_path}
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d @'autoscale-policy.json' 
-k -v -u admin:admin https://${host_ip}:9443/api/autoscalingPolicies
+popd
+
+# Adding cartridges
+pushd ${cartridges_path}
+       # Adding tomcat cartridge
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'tomcat.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+
+       # Adding php cartridge
+echo "Adding php cartridge..."
+curl -X POST -H "Content-Type: application/json" -d @'php.json' -k -v -u 
admin:admin https://${host_ip}:9443/api/cartridges
+popd
+
+sleep 3
+
+# Creating application
+pushd ${artifacts_path}
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d 
@'app_dependency_scaling.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications
+popd
+
+sleep 3
+
+# Deploy application
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" 
-d@'artifacts/dep_dependency_scaling.json' -k -v -u admin:admin 
https://${host_ip}:9443/api/applications/app_group_v1/deploy
+

Reply via email to