summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorblsaws <bryan.sullivan@att.com>2016-09-08 23:36:43 -0700
committerblsaws <bryan.sullivan@att.com>2016-09-08 23:36:43 -0700
commit73153f94bea2d8502befa4c57515905ed4e41466 (patch)
treed4d693def48ca0f10f8bd7a8a7c5a9c2f89b96a3
parent213e916cb6a63a79ff3ceac7d9bec48b251be922 (diff)
Fix line endings again
JIRA: MODELS-23 Change-Id: I7a4d36373e87c64827c215891eee9ec1d84b37b1 Signed-off-by: blsaws <bryan.sullivan@att.com>
-rwxr-xr-xtests/blueprints/heat/hello-world.hot76
-rwxr-xr-xtests/blueprints/tosca-vnfd-hello-world-tacker/blueprint.yaml114
-rwxr-xr-xtests/blueprints/tosca-vnfd-hello-world-tacker/start.sh94
-rw-r--r--tests/vHello.sh444
4 files changed, 364 insertions, 364 deletions
diff --git a/tests/blueprints/heat/hello-world.hot b/tests/blueprints/heat/hello-world.hot
index a4d6a7e..398bc62 100755
--- a/tests/blueprints/heat/hello-world.hot
+++ b/tests/blueprints/heat/hello-world.hot
@@ -1,38 +1,38 @@
-heat_template_version: 2013-05-23
-description: 'Hello World'
-parameters: {}
-resources:
- VDU1:
- type: OS::Nova::Server
- properties:
- availability_zone: nova
- config_drive: false
- flavor: {get_resource: VDU1_flavor}
- image: cirros-0.3.4-x86_64-uec
- networks:
- - port:
- get_resource: CP1
- - port:
- get_resource: CP2
- - port:
- get_resource: CP3
- user_data_format: SOFTWARE_CONFIG
- CP1:
- type: OS::Neutron::Port
- properties:
- network: vnf_mgmt
- CP2:
- type: OS::Neutron::Port
- properties:
- network: vnf_private
- CP3:
- type: OS::Neutron::Port
- properties:
- network: public
- VDU1_flavor:
- properties: {disk: 1, ram: 512, vcpus: 1}
- type: OS::Nova::Flavor
-outputs:
- mgmt_ip-VDU1:
- value:
- get_attr: [CP1, fixed_ips, 0, ip_address]
+heat_template_version: 2013-05-23
+description: 'Hello World'
+parameters: {}
+resources:
+ VDU1:
+ type: OS::Nova::Server
+ properties:
+ availability_zone: nova
+ config_drive: false
+ flavor: {get_resource: VDU1_flavor}
+ image: cirros-0.3.4-x86_64-uec
+ networks:
+ - port:
+ get_resource: CP1
+ - port:
+ get_resource: CP2
+ - port:
+ get_resource: CP3
+ user_data_format: SOFTWARE_CONFIG
+ CP1:
+ type: OS::Neutron::Port
+ properties:
+ network: vnf_mgmt
+ CP2:
+ type: OS::Neutron::Port
+ properties:
+ network: vnf_private
+ CP3:
+ type: OS::Neutron::Port
+ properties:
+ network: public
+ VDU1_flavor:
+ properties: {disk: 1, ram: 512, vcpus: 1}
+ type: OS::Nova::Flavor
+outputs:
+ mgmt_ip-VDU1:
+ value:
+ get_attr: [CP1, fixed_ips, 0, ip_address]
diff --git a/tests/blueprints/tosca-vnfd-hello-world-tacker/blueprint.yaml b/tests/blueprints/tosca-vnfd-hello-world-tacker/blueprint.yaml
index e8d91af..05fcf8a 100755
--- a/tests/blueprints/tosca-vnfd-hello-world-tacker/blueprint.yaml
+++ b/tests/blueprints/tosca-vnfd-hello-world-tacker/blueprint.yaml
@@ -1,57 +1,57 @@
-tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0
-
-description: Hello World
-
-metadata:
- template_name: tosca-vnfd-hello-world
-
-topology_template:
- node_templates:
- VDU1:
- type: tosca.nodes.nfv.VDU.Tacker
- capabilities:
- nfv_compute:
- properties:
- num_cpus: 1
- mem_size: 1024 MB
- disk_size: 4 GB
- properties:
- image: models-xenial-server
- availability_zone: nova
- mgmt_driver: noop
- config: |
- param0: key1
- param1: key2
-
- CP1:
- type: tosca.nodes.nfv.CP.Tacker
- properties:
- management: true
- anti_spoofing_protection: false
- requirements:
- - virtualLink:
- node: VL1
- - virtualBinding:
- node: VDU1
-
- CP2:
- type: tosca.nodes.nfv.CP.Tacker
- properties:
- anti_spoofing_protection: false
- requirements:
- - virtualLink:
- node: VL2
- - virtualBinding:
- node: VDU1
-
- VL1:
- type: tosca.nodes.nfv.VL
- properties:
- network_name: vnf_mgmt
- vendor: Tacker
-
- VL2:
- type: tosca.nodes.nfv.VL
- properties:
- network_name: vnf_private
- vendor: Tacker \ No newline at end of file
+tosca_definitions_version: tosca_simple_profile_for_nfv_1_0_0
+
+description: Hello World
+
+metadata:
+ template_name: tosca-vnfd-hello-world
+
+topology_template:
+ node_templates:
+ VDU1:
+ type: tosca.nodes.nfv.VDU.Tacker
+ capabilities:
+ nfv_compute:
+ properties:
+ num_cpus: 1
+ mem_size: 1024 MB
+ disk_size: 4 GB
+ properties:
+ image: models-xenial-server
+ availability_zone: nova
+ mgmt_driver: noop
+ config: |
+ param0: key1
+ param1: key2
+
+ CP1:
+ type: tosca.nodes.nfv.CP.Tacker
+ properties:
+ management: true
+ anti_spoofing_protection: false
+ requirements:
+ - virtualLink:
+ node: VL1
+ - virtualBinding:
+ node: VDU1
+
+ CP2:
+ type: tosca.nodes.nfv.CP.Tacker
+ properties:
+ anti_spoofing_protection: false
+ requirements:
+ - virtualLink:
+ node: VL2
+ - virtualBinding:
+ node: VDU1
+
+ VL1:
+ type: tosca.nodes.nfv.VL
+ properties:
+ network_name: vnf_mgmt
+ vendor: Tacker
+
+ VL2:
+ type: tosca.nodes.nfv.VL
+ properties:
+ network_name: vnf_private
+ vendor: Tacker
diff --git a/tests/blueprints/tosca-vnfd-hello-world-tacker/start.sh b/tests/blueprints/tosca-vnfd-hello-world-tacker/start.sh
index 55e51ce..d2bf204 100755
--- a/tests/blueprints/tosca-vnfd-hello-world-tacker/start.sh
+++ b/tests/blueprints/tosca-vnfd-hello-world-tacker/start.sh
@@ -1,47 +1,47 @@
-#!/bin/bash
-# Copyright 2016 AT&T Intellectual Property, Inc
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# What this is: Startup script for a simple web server as part of the
-# vHello test of the OPNFV Models project.
-#
-# Status: this is a work in progress, under test.
-#
-# How to use:
-# $ bash start.sh
-
-set -e
-
-sudo apt-get update
-sudo apt-get install -y python3
-
-cat <<EOF >index.html
-<!DOCTYPE html>
-<html>
-<head>
-<title>Hello World!</title>
-<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1"/>
-<style>
-body { width: 100%; background-color: white; color: black; padding: 0px; margin: 0px; font-family: sans-serif; font-size:100%; }
-</style>
-</head>
-<body>
-Hello World!<br>
-<a href="http://wiki.opnfv.org"><img src="logo.png"></a>
-</body></html>
-EOF
-
-wget https://www.opnfv.org/sites/all/themes/opnfv/logo.png
-
-nohup sudo python3 -m http.server 80 > /dev/null 2>&1 & \ No newline at end of file
+#!/bin/bash
+# Copyright 2016 AT&T Intellectual Property, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# What this is: Startup script for a simple web server as part of the
+# vHello test of the OPNFV Models project.
+#
+# Status: this is a work in progress, under test.
+#
+# How to use:
+# $ bash start.sh
+
+set -e
+
+sudo apt-get update
+sudo apt-get install -y python3
+
+cat <<EOF >index.html
+<!DOCTYPE html>
+<html>
+<head>
+<title>Hello World!</title>
+<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1"/>
+<style>
+body { width: 100%; background-color: white; color: black; padding: 0px; margin: 0px; font-family: sans-serif; font-size:100%; }
+</style>
+</head>
+<body>
+Hello World!<br>
+<a href="http://wiki.opnfv.org"><img src="logo.png"></a>
+</body></html>
+EOF
+
+wget https://www.opnfv.org/sites/all/themes/opnfv/logo.png
+
+nohup sudo python3 -m http.server 80 > /dev/null 2>&1 &
diff --git a/tests/vHello.sh b/tests/vHello.sh
index 4486541..f8453b0 100644
--- a/tests/vHello.sh
+++ b/tests/vHello.sh
@@ -1,222 +1,222 @@
-#!/bin/bash
-# Copyright 2016 AT&T Intellectual Property, Inc
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# What this is: Deployment test for the Cloudify Hello World blueprint.
-#
-# Status: this is a work in progress, under test.
-#
-# How to use:
-# $ wget https://git.opnfv.org/cgit/models/plain/tests/vHello.sh
-# $ bash vHello.sh [cloudify-cli|cloudify-manager] [setup|start|clean]
-# cloudify-cli: use Cloudify CLI
-# cloudify-manager: use Cloudify Manager
-# setup: setup test environment
-# start: run test
-# clean: cleanup after test
-
-set -x
-
-pass() {
- echo "Hooray!"
- set +x #echo off
- exit 0
-}
-
-# Use this to trigger fail() at the right places
-# if [ "$RESULT" == "Test Failed!" ]; then fail; fi
-fail() {
- echo "Test Failed!"
- set +x
- exit 1
-}
-
-function get_floating_net () {
- network_ids=($(neutron net-list|grep -v "+"|grep -v name|awk '{print $2}'))
- for id in ${network_ids[@]}; do
- [[ $(neutron net-show ${id}|grep 'router:external'|grep -i "true") != "" ]] && floating_network_id=${id}
- done
- if [[ $floating_network_id ]]; then
- floating_network_name=$(openstack network show $floating_network_id | awk "/ name / { print \$4 }")
- else
- echo "$0: Floating network not found"
- exit 1
- fi
-}
-
-select_manager() {
- echo "$0: select manager to use"
- MANAGER_IP=$(openstack server list | awk "/ cloudify-manager-server / { print \$9 }")
- cfy use -t $MANAGER_IP
- if [ $? -eq 1 ]; then fail; fi
-}
-
-start() {
- echo "$0: reset blueprints folder"
- if [[ -d /tmp/cloudify/blueprints ]]; then rm -rf /tmp/cloudify/blueprints; fi
- mkdir -p /tmp/cloudify/blueprints
- cd /tmp/cloudify/blueprints
-
- echo "$0: clone cloudify-hello-world-example"
- if [[ "$1" == "cloudify-manager" ]]; then
- git clone https://github.com/cloudify-cosmo/cloudify-hello-world-example.git
- cd cloudify-hello-world-example
- git checkout 3.4.1-build
- else
- git clone https://github.com/blsaws/cloudify-cli-hello-world-example.git
- cd cloudify-cli-hello-world-example
- fi
-
- cd /tmp/cloudify/blueprints
-
- echo "$0: setup OpenStack CLI environment"
- source /tmp/cloudify/admin-openrc.sh
-
- echo "$0: Setup image_id"
-# image=$(openstack image list | awk "/ CentOS-7-x86_64-GenericCloud-1607 / { print \$2 }")
- image=$(openstack image list | awk "/ xenial-server / { print \$2 }")
- if [ -z $image ]; then
-# glance --os-image-api-version 1 image-create --name CentOS-7-x86_64-GenericCloud-1607 --disk-format qcow2 --location http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1607.qcow2 --container-format bare
- glance --os-image-api-version 1 image-create --name xenial-server --disk-format qcow2 --location http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img --container-format bare
- fi
-# image=$(openstack image list | awk "/ CentOS-7-x86_64-GenericCloud-1607 / { print \$2 }")
- image=$(openstack image list | awk "/ xenial-server / { print \$2 }")
-
- if [[ "$1" == "cloudify-manager" ]]; then
- echo "$0: create Cloudify Manager blueprint inputs file"
- # Set host image per Cloudify agent compatibility: http://docs.getcloudify.org/3.4.0/agents/overview/
- cd /tmp/cloudify/blueprints
- cat <<EOF >vHello-inputs.yaml
-image: xenial-server
-flavor: m1.small
-agent_user: ubuntu
-webserver_port: 8080
-EOF
- else
- # Cloudify CLI use
- echo "$0: Get external network for Floating IP allocations"
- get_floating_net
-
- echo "$0: Create Nova key pair"
- mkdir -p ~/.ssh
- nova keypair-delete vHello
- nova keypair-add vHello > ~/.ssh/vHello.pem
- chmod 600 ~/.ssh/vHello.pem
-
- echo "$0: create Cloudify CLI blueprint inputs file"
- cat <<EOF >vHello-inputs.yaml
-image: xenial-server
-flavor: m1.small
-external_network_name: $floating_network_name
-webserver_port: 8080
-key_name: vHello
-ssh_key_filename: /root/.ssh/vHello.pem
-ssh_user: ubuntu
-ssh_port: 22
-EOF
- fi
-
- echo "$0: initialize cloudify environment"
- cd /tmp/cloudify/blueprints
- cfy init -r
-
- if [[ "$1" == "cloudify-manager" ]]; then
- select_manager
- echo "$0: upload blueprint via manager"
- cfy blueprints delete -b cloudify-hello-world-example
- cfy blueprints upload -p cloudify-hello-world-example/blueprint.yaml -b cloudify-hello-world-example
- if [ $? -eq 1 ]; then fail; fi
-
- echo "$0: create vHello deployment via manager"
- cfy deployments create --debug -d vHello -i vHello-inputs.yaml -b cloudify-hello-world-example
- if [ $? -eq 1 ]; then fail; fi
-
- echo "$0: execute 'install' workflow for vHello deployment via manager"
- cfy executions start -w install -d vHello --timeout 1800
- if [ $? -eq 1 ]; then fail; fi
-
- echo "$0: get vHello server address"
- SERVER_URL=$(cfy deployments outputs -d vHello | awk "/ Value: / { print \$2 }")
- else
- echo "$0: install local blueprint"
- # don't use --install-plugins, causes openstack plugin 1.4.1 to be rolled back to 1.4 and then an error
- cfy local install -i vHello-inputs.yaml -p cloudify-cli-hello-world-example/blueprint.yaml --allow-custom-parameters --parameters="floating_network_name=$floating_network_name" --task-retries=10 --task-retry-interval=30
- if [ $? -eq 1 ]; then fail; fi
-
- echo "$0: get vHello server address"
- SERVER_URL=$(cfy local outputs | awk "/http_endpoint/ { print \$2 }" | sed -- 's/"//g')
- fi
-
- echo "$0: verify vHello server is running"
- apt-get install -y curl
- if [[ $(curl $SERVER_URL | grep -c "Hello, World!") != 1 ]]; then fail; fi
-
- pass
-}
-
-clean() {
- echo "$0: activate cloudify Virtualenv"
- source ~/cloudify/venv/bin/activate
-
- echo "$0: setup OpenStack CLI environment"
- source /tmp/cloudify/admin-openrc.sh
-
- echo "$0: initialize cloudify environment"
- cd /tmp/cloudify/blueprints
-
- if [[ "$1" == "cloudify-manager" ]]; then
- select_manager
- echo "$0: uninstall vHello blueprint via manager"
- cfy executions start -w uninstall -d vHello
- if [ $? -eq 1 ]; then fail; fi
-
- echo "$0: delete vHello blueprint"
- cfy deployments delete -d vHello
- if [ $? -eq 1 ]; then fail; fi
- else
- echo "$0: uninstall vHello blueprint via CLI"
- cfy local uninstall
- if [ $? -eq 1 ]; then fail; fi
- fi
- pass
-}
-
-if [[ "$2" == "setup" ]]; then
- echo "$0: Setup temp test folder /tmp/cloudify and copy this script there"
- mkdir /tmp/cloudify
- chmod 777 /tmp/cloudify/
- cp $0 /tmp/cloudify/.
- chmod 755 /tmp/cloudify/*.sh
-
- echo "$0: cloudify-setup part 1"
- bash utils/cloudify-setup.sh $1 init
-
- echo "$0: cloudify-setup part 2"
- CONTAINER=$(sudo docker ps -l | awk "/cloudify/ { print \$1 }")
- sudo docker exec $CONTAINER /tmp/cloudify/cloudify-setup.sh $1 setup
- if [ $? -eq 1 ]; then fail; fi
- pass
-else
- if [[ $# -eq 3 ]]; then
- # running inside the cloudify container, ready to go
- if [[ "$3" == "start" ]]; then start $1; fi
- if [[ "$3" == "clean" ]]; then clean $1; fi
- else
- echo "$0: pass $2 command to vHello.sh in cloudify container"
- CONTAINER=$(sudo docker ps -a | awk "/cloudify/ { print \$1 }")
- sudo docker exec $CONTAINER /tmp/cloudify/vHello.sh $1 $2 $2
- if [ $? -eq 1 ]; then fail; fi
- pass
- fi
-fi
+#!/bin/bash
+# Copyright 2016 AT&T Intellectual Property, Inc
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# What this is: Deployment test for the Cloudify Hello World blueprint.
+#
+# Status: this is a work in progress, under test.
+#
+# How to use:
+# $ wget https://git.opnfv.org/cgit/models/plain/tests/vHello.sh
+# $ bash vHello.sh [cloudify-cli|cloudify-manager] [setup|start|clean]
+# cloudify-cli: use Cloudify CLI
+# cloudify-manager: use Cloudify Manager
+# setup: setup test environment
+# start: run test
+# clean: cleanup after test
+
+set -x
+
+pass() {
+ echo "Hooray!"
+ set +x #echo off
+ exit 0
+}
+
+# Use this to trigger fail() at the right places
+# if [ "$RESULT" == "Test Failed!" ]; then fail; fi
+fail() {
+ echo "Test Failed!"
+ set +x
+ exit 1
+}
+
+function get_floating_net () {
+ network_ids=($(neutron net-list|grep -v "+"|grep -v name|awk '{print $2}'))
+ for id in ${network_ids[@]}; do
+ [[ $(neutron net-show ${id}|grep 'router:external'|grep -i "true") != "" ]] && floating_network_id=${id}
+ done
+ if [[ $floating_network_id ]]; then
+ floating_network_name=$(openstack network show $floating_network_id | awk "/ name / { print \$4 }")
+ else
+ echo "$0: Floating network not found"
+ exit 1
+ fi
+}
+
+select_manager() {
+ echo "$0: select manager to use"
+ MANAGER_IP=$(openstack server list | awk "/ cloudify-manager-server / { print \$9 }")
+ cfy use -t $MANAGER_IP
+ if [ $? -eq 1 ]; then fail; fi
+}
+
+start() {
+ echo "$0: reset blueprints folder"
+ if [[ -d /tmp/cloudify/blueprints ]]; then rm -rf /tmp/cloudify/blueprints; fi
+ mkdir -p /tmp/cloudify/blueprints
+ cd /tmp/cloudify/blueprints
+
+ echo "$0: clone cloudify-hello-world-example"
+ if [[ "$1" == "cloudify-manager" ]]; then
+ git clone https://github.com/cloudify-cosmo/cloudify-hello-world-example.git
+ cd cloudify-hello-world-example
+ git checkout 3.4.1-build
+ else
+ git clone https://github.com/blsaws/cloudify-cli-hello-world-example.git
+ cd cloudify-cli-hello-world-example
+ fi
+
+ cd /tmp/cloudify/blueprints
+
+ echo "$0: setup OpenStack CLI environment"
+ source /tmp/cloudify/admin-openrc.sh
+
+ echo "$0: Setup image_id"
+# image=$(openstack image list | awk "/ CentOS-7-x86_64-GenericCloud-1607 / { print \$2 }")
+ image=$(openstack image list | awk "/ xenial-server / { print \$2 }")
+ if [ -z $image ]; then
+# glance --os-image-api-version 1 image-create --name CentOS-7-x86_64-GenericCloud-1607 --disk-format qcow2 --location http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1607.qcow2 --container-format bare
+ glance --os-image-api-version 1 image-create --name xenial-server --disk-format qcow2 --location http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img --container-format bare
+ fi
+# image=$(openstack image list | awk "/ CentOS-7-x86_64-GenericCloud-1607 / { print \$2 }")
+ image=$(openstack image list | awk "/ xenial-server / { print \$2 }")
+
+ if [[ "$1" == "cloudify-manager" ]]; then
+ echo "$0: create Cloudify Manager blueprint inputs file"
+ # Set host image per Cloudify agent compatibility: http://docs.getcloudify.org/3.4.0/agents/overview/
+ cd /tmp/cloudify/blueprints
+ cat <<EOF >vHello-inputs.yaml
+image: xenial-server
+flavor: m1.small
+agent_user: ubuntu
+webserver_port: 8080
+EOF
+ else
+ # Cloudify CLI use
+ echo "$0: Get external network for Floating IP allocations"
+ get_floating_net
+
+ echo "$0: Create Nova key pair"
+ mkdir -p ~/.ssh
+ nova keypair-delete vHello
+ nova keypair-add vHello > ~/.ssh/vHello.pem
+ chmod 600 ~/.ssh/vHello.pem
+
+ echo "$0: create Cloudify CLI blueprint inputs file"
+ cat <<EOF >vHello-inputs.yaml
+image: xenial-server
+flavor: m1.small
+external_network_name: $floating_network_name
+webserver_port: 8080
+key_name: vHello
+ssh_key_filename: /root/.ssh/vHello.pem
+ssh_user: ubuntu
+ssh_port: 22
+EOF
+ fi
+
+ echo "$0: initialize cloudify environment"
+ cd /tmp/cloudify/blueprints
+ cfy init -r
+
+ if [[ "$1" == "cloudify-manager" ]]; then
+ select_manager
+ echo "$0: upload blueprint via manager"
+ cfy blueprints delete -b cloudify-hello-world-example
+ cfy blueprints upload -p cloudify-hello-world-example/blueprint.yaml -b cloudify-hello-world-example
+ if [ $? -eq 1 ]; then fail; fi
+
+ echo "$0: create vHello deployment via manager"
+ cfy deployments create --debug -d vHello -i vHello-inputs.yaml -b cloudify-hello-world-example
+ if [ $? -eq 1 ]; then fail; fi
+
+ echo "$0: execute 'install' workflow for vHello deployment via manager"
+ cfy executions start -w install -d vHello --timeout 1800
+ if [ $? -eq 1 ]; then fail; fi
+
+ echo "$0: get vHello server address"
+ SERVER_URL=$(cfy deployments outputs -d vHello | awk "/ Value: / { print \$2 }")
+ else
+ echo "$0: install local blueprint"
+ # don't use --install-plugins, causes openstack plugin 1.4.1 to be rolled back to 1.4 and then an error
+ cfy local install -i vHello-inputs.yaml -p cloudify-cli-hello-world-example/blueprint.yaml --allow-custom-parameters --parameters="floating_network_name=$floating_network_name" --task-retries=10 --task-retry-interval=30
+ if [ $? -eq 1 ]; then fail; fi
+
+ echo "$0: get vHello server address"
+ SERVER_URL=$(cfy local outputs | awk "/http_endpoint/ { print \$2 }" | sed -- 's/"//g')
+ fi
+
+ echo "$0: verify vHello server is running"
+ apt-get install -y curl
+ if [[ $(curl $SERVER_URL | grep -c "Hello, World!") != 1 ]]; then fail; fi
+
+ pass
+}
+
+clean() {
+ echo "$0: activate cloudify Virtualenv"
+ source ~/cloudify/venv/bin/activate
+
+ echo "$0: setup OpenStack CLI environment"
+ source /tmp/cloudify/admin-openrc.sh
+
+ echo "$0: initialize cloudify environment"
+ cd /tmp/cloudify/blueprints
+
+ if [[ "$1" == "cloudify-manager" ]]; then
+ select_manager
+ echo "$0: uninstall vHello blueprint via manager"
+ cfy executions start -w uninstall -d vHello
+ if [ $? -eq 1 ]; then fail; fi
+
+ echo "$0: delete vHello blueprint"
+ cfy deployments delete -d vHello
+ if [ $? -eq 1 ]; then fail; fi
+ else
+ echo "$0: uninstall vHello blueprint via CLI"
+ cfy local uninstall
+ if [ $? -eq 1 ]; then fail; fi
+ fi
+ pass
+}
+
+if [[ "$2" == "setup" ]]; then
+ echo "$0: Setup temp test folder /tmp/cloudify and copy this script there"
+ mkdir /tmp/cloudify
+ chmod 777 /tmp/cloudify/
+ cp $0 /tmp/cloudify/.
+ chmod 755 /tmp/cloudify/*.sh
+
+ echo "$0: cloudify-setup part 1"
+ bash utils/cloudify-setup.sh $1 init
+
+ echo "$0: cloudify-setup part 2"
+ CONTAINER=$(sudo docker ps -l | awk "/cloudify/ { print \$1 }")
+ sudo docker exec $CONTAINER /tmp/cloudify/cloudify-setup.sh $1 setup
+ if [ $? -eq 1 ]; then fail; fi
+ pass
+else
+ if [[ $# -eq 3 ]]; then
+ # running inside the cloudify container, ready to go
+ if [[ "$3" == "start" ]]; then start $1; fi
+ if [[ "$3" == "clean" ]]; then clean $1; fi
+ else
+ echo "$0: pass $2 command to vHello.sh in cloudify container"
+ CONTAINER=$(sudo docker ps -a | awk "/cloudify/ { print \$1 }")
+ sudo docker exec $CONTAINER /tmp/cloudify/vHello.sh $1 $2 $2
+ if [ $? -eq 1 ]; then fail; fi
+ pass
+ fi
+fi