Add multi-cloud pike csit

Change-Id: I787b7c1a6b438539cd1d1dbf174e332af991cc7a
Issue-ID: MULTICLOUD-276
Signed-off-by: Huang Haibin <haibin.huang@intel.com>
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 0000000..62d380d
--- /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 0000000..7d6c953
--- /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 0000000..5914cbb
--- /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