From 72c45859f7ed8523635125fe7289498f7962e27d Mon Sep 17 00:00:00 2001 From: Huang Haibin Date: Fri, 17 Aug 2018 15:50:14 +0800 Subject: Add multi-cloud pike csit Change-Id: I787b7c1a6b438539cd1d1dbf174e332af991cc7a Issue-ID: MULTICLOUD-276 Signed-off-by: Huang Haibin --- .../plans/multicloud-pike/functionality1/setup.sh | 34 ++++++++++++ .../multicloud-pike/functionality1/teardown.sh | 15 ++++++ .../multicloud-pike/functionality1/testplan.txt | 3 ++ .../plans/multicloud-pike/hpa-discovery/setup.sh | 60 ++++++++++++++++++++++ .../multicloud-pike/hpa-discovery/teardown.sh | 18 +++++++ .../multicloud-pike/hpa-discovery/testplan.txt | 3 ++ 6 files changed, 133 insertions(+) create mode 100644 test/csit/plans/multicloud-pike/functionality1/setup.sh create mode 100644 test/csit/plans/multicloud-pike/functionality1/teardown.sh create mode 100644 test/csit/plans/multicloud-pike/functionality1/testplan.txt create mode 100644 test/csit/plans/multicloud-pike/hpa-discovery/setup.sh create mode 100644 test/csit/plans/multicloud-pike/hpa-discovery/teardown.sh create mode 100644 test/csit/plans/multicloud-pike/hpa-discovery/testplan.txt diff --git a/test/csit/plans/multicloud-pike/functionality1/setup.sh b/test/csit/plans/multicloud-pike/functionality1/setup.sh new file mode 100644 index 000000000..491e91d90 --- /dev/null +++ b/test/csit/plans/multicloud-pike/functionality1/setup.sh @@ -0,0 +1,34 @@ +#!/bin/bash +# +# Copyright (c) 2017-2018 Intel, 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. + +pushd ${SCRIPTS} + +# start multicloud-pike +./run-instance.sh nexus3.onap.org:10001/onap/multicloud/openstack/openstack-pike:latest multicloud-pike +SERVICE_IP=$(./get-instance-ip.sh multicloud-pike) +SERVICE_PORT=9007 +popd + +if [[ $no_proxy && $no_proxy != *$SERVICE_IP* ]]; then + export no_proxy+=$no_proxy,$SERVICE_IP +fi + +for i in {1..50}; do + curl -sS ${SERVICE_IP}:${SERVICE_PORT} && break + echo sleep $i + sleep $i +done + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES+="-v SERVICE_IP:${SERVICE_IP} " +ROBOT_VARIABLES+="-v SERVICE_PORT:${SERVICE_PORT} " diff --git a/test/csit/plans/multicloud-pike/functionality1/teardown.sh b/test/csit/plans/multicloud-pike/functionality1/teardown.sh new file mode 100644 index 000000000..13b70628c --- /dev/null +++ b/test/csit/plans/multicloud-pike/functionality1/teardown.sh @@ -0,0 +1,15 @@ +#!/bin/bash +# +# Copyright (c) 2017-2018 Intel, 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. + +# This script is sourced by run-csit.sh after Robot test completion. +kill-instance.sh multicloud-pike diff --git a/test/csit/plans/multicloud-pike/functionality1/testplan.txt b/test/csit/plans/multicloud-pike/functionality1/testplan.txt new file mode 100644 index 000000000..7f4601647 --- /dev/null +++ b/test/csit/plans/multicloud-pike/functionality1/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +multicloud-pike/provision/sanity_test_multicloud.robot diff --git a/test/csit/plans/multicloud-pike/hpa-discovery/setup.sh b/test/csit/plans/multicloud-pike/hpa-discovery/setup.sh new file mode 100644 index 000000000..62d380d85 --- /dev/null +++ b/test/csit/plans/multicloud-pike/hpa-discovery/setup.sh @@ -0,0 +1,60 @@ +#!/bin/bash +# +# Copyright 2018 Intel Corporation, 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. + +cd ${SCRIPTS} + +source common_functions.sh + +generic_sim_path=${WORKSPACE}/test/csit/scripts/multicloud-pike/generic_sim +multicloud_provision_path=${WORKSPACE}/test/csit/tests/multicloud-pike/provision +# start generic simulator for openstack mock and AAI mock +if [[ -z $(docker images -q generic_sim) ]]; then + pushd $generic_sim_path + docker build -t generic_sim . + popd +fi + +function start_simulator () +{ + local service_name=$1 + local service_port=$2 + + ./run-instance.sh generic_sim $service_name "-v ${multicloud_provision_path}/${service_name}/:/tmp/generic_sim/ -v ${generic_sim_path}/${service_name}/:/etc/generic_sim/ -p $service_port:8080" + wait_for_service_init localhost:$service_port + bypass_ip_adress $service_name +} + +start_simulator nova 8774 +start_simulator glance 9292 +start_simulator cinder 8776 +start_simulator keystone 5000 +start_simulator aai 8443 + +# start multicloud-pike +./run-instance.sh nexus3.onap.org:10001/onap/multicloud/openstack/openstack-pike multicloud-pike "-t -e AAI_SERVICE_URL=http://aai:8080/aai -e no_proxy=$no_proxy -p 9007:9007" +SERVICE_IP=$(./get-instance-ip.sh multicloud-pike) +SERVICE_PORT=9007 + +docker network create hpa-net +for container in aai keystone glance cinder nova multicloud-pike; do + docker network connect hpa-net $container +done + +bypass_ip_adress $SERVICE_IP +wait_for_service_init ${SERVICE_IP}:${SERVICE_PORT} + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES+="-v SERVICE_IP:${SERVICE_IP} " +ROBOT_VARIABLES+="-v SERVICE_PORT:${SERVICE_PORT} " diff --git a/test/csit/plans/multicloud-pike/hpa-discovery/teardown.sh b/test/csit/plans/multicloud-pike/hpa-discovery/teardown.sh new file mode 100644 index 000000000..7d6c95350 --- /dev/null +++ b/test/csit/plans/multicloud-pike/hpa-discovery/teardown.sh @@ -0,0 +1,18 @@ +#!/bin/bash +# +# Copyright 2018 Intel Corporation, 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. + +for container in aai keystone cinder glance nova multicloud-pike; do + kill-instance.sh $container +done +docker network rm hpa-net diff --git a/test/csit/plans/multicloud-pike/hpa-discovery/testplan.txt b/test/csit/plans/multicloud-pike/hpa-discovery/testplan.txt new file mode 100644 index 000000000..5914cbbac --- /dev/null +++ b/test/csit/plans/multicloud-pike/hpa-discovery/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +multicloud-pike/provision/hpa_multicloud.robot -- cgit 1.2.3-korg