You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by re...@apache.org on 2015/04/23 10:28:02 UTC
stratos git commit: adding nested-group-v2 sample
Repository: stratos
Updated Branches:
refs/heads/master 2065d7a16 -> a882d5096
adding nested-group-v2 sample
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/a882d509
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/a882d509
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/a882d509
Branch: refs/heads/master
Commit: a882d50962ffe20c70e4cd0f9fa0fcc19fb265f1
Parents: 2065d7a
Author: reka <rt...@gmail.com>
Authored: Thu Apr 23 13:57:54 2015 +0530
Committer: reka <rt...@gmail.com>
Committed: Thu Apr 23 13:57:54 2015 +0530
----------------------------------------------------------------------
samples/applications/nested-group-v2/README.md | 30 ++++++
.../nested-group-v2/artifacts/application.json | 97 +++++++++++++++++++
.../nested-group-v2/nested-group-app.png | Bin 0 -> 22765 bytes
.../nested-group-v2/scripts/common/deploy.sh | 66 +++++++++++++
.../nested-group-v2/scripts/common/undeploy.sh | 29 ++++++
.../nested-group-v2/scripts/ec2/deploy.sh | 9 ++
.../nested-group-v2/scripts/ec2/undeploy.sh | 7 ++
.../scripts/kubernetes/deploy.sh | 15 +++
.../scripts/kubernetes/undeploy.sh | 13 +++
.../nested-group-v2/scripts/mock/deploy.sh | 9 ++
.../nested-group-v2/scripts/mock/undeploy.sh | 7 ++
.../nested-group-v2/scripts/openstack/deploy.sh | 9 ++
.../scripts/openstack/undeploy.sh | 7 ++
13 files changed, 298 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/README.md
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/README.md b/samples/applications/nested-group-v2/README.md
new file mode 100644
index 0000000..3bf8240
--- /dev/null
+++ b/samples/applications/nested-group-v2/README.md
@@ -0,0 +1,30 @@
+nested-group
+============
+
+Application folder structure
+----------------------------
+-- artifacts/<iaas>/ IaaS specific artifacts
+-- scripts/common/ Common scripts for all iaases
+-- scripts/<iaas> IaaS specific scripts
+
+How to run
+----------
+cd scripts/<iaas>/
+./deploy.sh
+
+
+Description
+----------
+
+This sample is to test the nested grouping with more than one group in one level where each groups have their own cartridges. Eg:
+
+ group6
+ |
+ -----------------
+ | |
+ group7 group-tom2
+ | |
+ -------- ---------
+ | | | |
+tomcat tomcat1 tomcat2 tomcat3
+
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/artifacts/application.json
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/artifacts/application.json b/samples/applications/nested-group-v2/artifacts/application.json
new file mode 100644
index 0000000..bfa7732
--- /dev/null
+++ b/samples/applications/nested-group-v2/artifacts/application.json
@@ -0,0 +1,97 @@
+{
+ "applicationId": "nested-group-app",
+ "alias": "my-nested-group-app",
+ "components": {
+ "groups": [
+ {
+ "name": "group6",
+ "alias": "my-group6",
+ "groupMinInstances": 1,
+ "groupMaxInstances": 1,
+ "deploymentPolicy":"deployment-policy-2",
+ "groups": [
+ {
+ "name": "group7",
+ "alias": "my-group7",
+ "groupMinInstances": 1,
+ "groupMaxInstances": 1,
+ "cartridges": [
+ {
+ "type": "tomcat",
+ "cartridgeMin": 1,
+ "cartridgeMax": 2,
+ "subscribableInfo": {
+ "alias": "my-tomcat-group7",
+ "autoscalingPolicy": "autoscaling-policy-1",
+ "artifactRepository":{
+ "privateRepo":false,
+ "repoUrl":"https://github.com/imesh/stratos-tomcat1-applications.git",
+ "repoUsername":"",
+ "repoPassword":""
+ }
+ }
+ },
+ {
+ "type": "tomcat1",
+ "cartridgeMin": 1,
+ "cartridgeMax": 2,
+ "subscribableInfo": {
+ "alias": "my-tomcat1-group7",
+ "autoscalingPolicy": "autoscaling-policy-1",
+ "artifactRepository":{
+ "privateRepo":false,
+ "repoUrl":"https://github.com/imesh/stratos-tomcat1-applications.git",
+ "repoUsername":"",
+ "repoPassword":""
+ }
+ }
+ }
+ ],
+ "groups": []
+ },
+ {
+ "name": "group-tom2",
+ "alias": "my-group-tmo2",
+ "groupMinInstances": 1,
+ "groupMaxInstances": 1,
+ "cartridges": [
+ {
+ "type": "tomcat2",
+ "cartridgeMin": 1,
+ "cartridgeMax": 2,
+ "subscribableInfo": {
+ "alias": "my-tomcat2-group",
+ "autoscalingPolicy": "autoscaling-policy-1",
+ "artifactRepository":{
+ "privateRepo":false,
+ "repoUrl":"https://github.com/imesh/stratos-tomcat1-applications.git",
+ "repoUsername":"",
+ "repoPassword":""
+ }
+ }
+ },
+ {
+ "type": "tomcat3",
+ "cartridgeMin": 1,
+ "cartridgeMax": 2,
+ "subscribableInfo": {
+ "alias": "my-tomcat3-group",
+ "autoscalingPolicy": "autoscaling-policy-1",
+ "artifactRepository":{
+ "privateRepo":false,
+ "repoUrl":"https://github.com/imesh/stratos-tomcat1-applications.git",
+ "repoUsername":"",
+ "repoPassword":""
+ }
+ }
+ }
+ ],
+ "groups": []
+ }
+ ]
+ }
+ ]
+
+ }
+}
+
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/nested-group-app.png
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/nested-group-app.png b/samples/applications/nested-group-v2/nested-group-app.png
new file mode 100644
index 0000000..e6a0f37
Binary files /dev/null and b/samples/applications/nested-group-v2/nested-group-app.png differ
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/common/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/common/deploy.sh b/samples/applications/nested-group-v2/scripts/common/deploy.sh
new file mode 100755
index 0000000..37f3b55
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/common/deploy.sh
@@ -0,0 +1,66 @@
+#!/bin/bash
+
+iaas=$1
+host_ip="localhost"
+host_port=9443
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+
+artifacts_path=`cd "${script_path}/../../artifacts"; pwd`
+iaas_artifacts_path=`cd "${script_path}/../../artifacts/${iaas}"; pwd`
+cartridges_path=`cd "${script_path}/../../../../cartridges/${iaas}"; pwd`
+cartridges_groups_path=`cd "${script_path}/../../../../cartridges-groups"; pwd`
+autoscaling_policies_path=`cd "${script_path}/../../../../autoscaling-policies"; pwd`
+network_partitions_path=`cd "${script_path}/../../../../network-partitions/${iaas}"; pwd`
+deployment_policies_path=`cd "${script_path}/../../../../deployment-policies"; pwd`
+application_policies_path=`cd "${script_path}/../../../../application-policies"; pwd`
+
+set -e
+
+if [[ -z "${iaas}" ]]; then
+ echo "Usage: deploy.sh [iaas]"
+ exit
+fi
+
+echo ${autoscaling_policies_path}/autoscaling-policy-1.json
+echo "Adding autoscale policy..."
+curl -X POST -H "Content-Type: application/json" -d "@${autoscaling_policies_path}/autoscaling-policy-1.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/autoscalingPolicies
+
+echo "Adding network partitions..."
+curl -X POST -H "Content-Type: application/json" -d "@${network_partitions_path}/network-partition-1.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/networkPartitions
+curl -X POST -H "Content-Type: application/json" -d "@${network_partitions_path}/network-partition-2.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/networkPartitions
+
+echo "Adding deployment policies..."
+curl -X POST -H "Content-Type: application/json" -d "@${deployment_policies_path}/deployment-policy-2.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/deploymentPolicies
+
+echo "Adding tomcat cartridge..."
+curl -X POST -H "Content-Type: application/json" -d "@${cartridges_path}/tomcat.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges
+
+echo "Adding tomcat1 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d "@${cartridges_path}/tomcat1.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges
+
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d "@${cartridges_path}/tomcat2.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges
+
+echo "Adding tomcat2 cartridge..."
+curl -X POST -H "Content-Type: application/json" -d "@${cartridges_path}/tomcat3.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges
+
+
+echo "Adding group6c group..."
+curl -X POST -H "Content-Type: application/json" -d "@${cartridges_groups_path}/group6c7.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridgeGroups
+
+sleep 1
+
+echo "Adding application policy..."
+curl -X POST -H "Content-Type: application/json" -d "@${application_policies_path}/application-policy-1.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/applicationPolicies
+
+sleep 1
+
+echo "Creating application..."
+curl -X POST -H "Content-Type: application/json" -d "@${artifacts_path}/application.json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/applications
+
+sleep 1
+
+echo "Deploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/applications/nested-group-app/deploy/application-policy-1
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/common/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/common/undeploy.sh b/samples/applications/nested-group-v2/scripts/common/undeploy.sh
new file mode 100644
index 0000000..038933e
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/common/undeploy.sh
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+host_ip="localhost"
+host_port=9443
+
+set -e
+
+echo "Undeploying application..."
+curl -X POST -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/applications/nested-group-app/undeploy
+
+sleep 10
+
+echo "Deleting application..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/applications/nested-group-app
+
+echo "Removing groups..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridgeGroups/group6
+
+echo "Removing cartridges..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges/tomcat
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges/tomcat1
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/cartridges/tomcat2
+
+echo "Removing autoscale policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/autoscalingPolicies/autoscaling-policy-1
+
+echo "Removing application policies..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/applicationPolicies/application-policy-1
+
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/ec2/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/ec2/deploy.sh b/samples/applications/nested-group-v2/scripts/ec2/deploy.sh
new file mode 100755
index 0000000..1370667
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/ec2/deploy.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+iaas="ec2"
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/deploy.sh ${iaas}
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/ec2/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/ec2/undeploy.sh b/samples/applications/nested-group-v2/scripts/ec2/undeploy.sh
new file mode 100644
index 0000000..17d8c71
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/ec2/undeploy.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/undeploy.sh
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/kubernetes/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/kubernetes/deploy.sh b/samples/applications/nested-group-v2/scripts/kubernetes/deploy.sh
new file mode 100755
index 0000000..32eff3c
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/kubernetes/deploy.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+host_ip="localhost"
+host_port=9443
+iaas="kubernetes"
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+iaas_artifacts_path=`cd "${script_path}/../../artifacts/${iaas}"; pwd`
+
+echo "Adding kubernetes cluster..."
+curl -X POST -H "Content-Type: application/json" -d "@${iaas_artifacts_path}/kubernetes-cluster.json" -k -u admin:admin https://${host_ip}:${host_port}/api/kubernetesClusters
+
+bash ${common_folder}/deploy.sh ${iaas}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/kubernetes/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/kubernetes/undeploy.sh b/samples/applications/nested-group-v2/scripts/kubernetes/undeploy.sh
new file mode 100644
index 0000000..0054670
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/kubernetes/undeploy.sh
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+host_ip="localhost"
+host_port=9443
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/undeploy.sh
+
+echo "Removing kubernetes cluster..."
+curl -X DELETE -H "Content-Type: application/json" -k -v -u admin:admin https://${host_ip}:${host_port}/api/kubernetesClusters/kubernetes-cluster-1
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/mock/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/mock/deploy.sh b/samples/applications/nested-group-v2/scripts/mock/deploy.sh
new file mode 100755
index 0000000..93f8517
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/mock/deploy.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+
+iaas="mock"
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/deploy.sh ${iaas}
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/mock/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/mock/undeploy.sh b/samples/applications/nested-group-v2/scripts/mock/undeploy.sh
new file mode 100755
index 0000000..17d8c71
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/mock/undeploy.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/undeploy.sh
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/openstack/deploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/openstack/deploy.sh b/samples/applications/nested-group-v2/scripts/openstack/deploy.sh
new file mode 100755
index 0000000..4c39959
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/openstack/deploy.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+iaas="openstack"
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/deploy.sh ${iaas}
http://git-wip-us.apache.org/repos/asf/stratos/blob/a882d509/samples/applications/nested-group-v2/scripts/openstack/undeploy.sh
----------------------------------------------------------------------
diff --git a/samples/applications/nested-group-v2/scripts/openstack/undeploy.sh b/samples/applications/nested-group-v2/scripts/openstack/undeploy.sh
new file mode 100644
index 0000000..17d8c71
--- /dev/null
+++ b/samples/applications/nested-group-v2/scripts/openstack/undeploy.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+prgdir=`dirname "$0"`
+script_path=`cd "$prgdir"; pwd`
+common_folder=`cd "${script_path}/../common"; pwd`
+
+bash ${common_folder}/undeploy.sh