diff options
Diffstat (limited to 'test/csit/plans')
70 files changed, 1557 insertions, 178 deletions
diff --git a/test/csit/plans/aaf/aafapi/setup.sh b/test/csit/plans/aaf/aafapi/setup.sh new file mode 100644 index 000000000..bfaff925c --- /dev/null +++ b/test/csit/plans/aaf/aafapi/setup.sh @@ -0,0 +1,72 @@ +#!/bin/bash +# +# ============LICENSE_START======================================================= +# ONAP AAF +# ================================================================================ +# Copyright (C) 2017 AT&T Intellectual Property. All rights +# reserved. +# ================================================================================ +# 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. +# ============LICENSE_END============================================ +# =================================================================== +# ECOMP is a trademark and service mark of AT&T Intellectual Property. +# +# Place the scripts in run order: +source ${SCRIPTS}/common_functions.sh + +# Clone AAF Authz repo +mkdir -p $WORKSPACE/archives/aafcsit +cd $WORKSPACE/archives/aafcsit +#unset http_proxy https_proxy +git clone --depth 1 http://gerrit.onap.org/r/aaf/authz -b master +git pull +cd $WORKSPACE/archives/aafcsit/authz/authz-service/src/main/resources/docker-compose +pwd +chmod -R 777 $WORKSPACE/archives/aafcsit/authz/authz-service/src/main/resources/docker-compose + + +# start aaf containers with docker compose and configuration from docker-compose.yml +docker-compose up -d + +# Wait for initialization of Docker contaienr for AAF & Cassandra +for i in {1..50}; do + if [ $(docker inspect --format '{{ .State.Running }}' dockercompose_aaf_container_1) ] && \ + [ $(docker inspect --format '{{ .State.Running }}' dockercompose_cassandra_container_1) ] && \ + [ $(docker inspect --format '{{ .State.Running }}' dockercompose_aaf_container_1) ] + then + echo "AAF Service Running" + break + else + echo sleep $i + sleep $i + fi +done + + +AAF_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' dockercompose_aaf_container_1) +CASSANDRA_IP=$(docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' dockercompose_cassandra_container_1) + + +echo AAF_IP=${AAF_IP} +echo CASSANDRA_IP=${CASSANDRA_IP} + + +# Wait for initialization of docker services +for i in {1..50}; do + curl -sS -m 1 ${AAF_IP}:8101 && break + echo sleep $i + sleep $i +done + +#Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v AAF_IP:${AAF_IP}" diff --git a/test/csit/plans/aaf/aafapi/teardown.sh b/test/csit/plans/aaf/aafapi/teardown.sh new file mode 100644 index 000000000..1f7b2853d --- /dev/null +++ b/test/csit/plans/aaf/aafapi/teardown.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# +# Modifications copyright (c) 2017 AT&T Intellectual Property +# + +kill-instance.sh dockercompose_aaf_container_1 +kill-instance.sh dockercompose_cassandra_container_1 + diff --git a/test/csit/plans/aaf/aafapi/testplan.txt b/test/csit/plans/aaf/aafapi/testplan.txt new file mode 100644 index 000000000..ea18ca6d8 --- /dev/null +++ b/test/csit/plans/aaf/aafapi/testplan.txt @@ -0,0 +1,2 @@ +# Place the suites in run order. +aaf/aafapi diff --git a/test/csit/plans/aai/esr-server/setup.sh b/test/csit/plans/aai/esr-server/setup.sh new file mode 100644 index 000000000..a2cfa5e8d --- /dev/null +++ b/test/csit/plans/aai/esr-server/setup.sh @@ -0,0 +1,63 @@ +#!/bin/bash +# +# Copyright 2017 ZTE Corporation. +# +# 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. +# +# Place the scripts in run order: + + +#login to the onap nexus docker repo +docker login -u docker -p docker nexus3.onap.org:10001 + +# Start MSB +docker run -d -p 8500:8500 --name msb_consul nexus3.onap.org:10001/onap/msb/msb_base +CONSUL_IP=`get-instance-ip.sh msb_consul` +echo CONSUL_IP=${CONSUL_IP} +docker run -d -p 10081:10081 -e CONSUL_IP=$CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery +DISCOVERY_IP=`get-instance-ip.sh msb_discovery` +echo DISCOVERY_IP=${DISCOVERY_IP} +docker run -d -p 80:80 -e CONSUL_IP=$CONSUL_IP -e SDCLIENT_IP=$DISCOVERY_IP --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway +MSB_IP=`get-instance-ip.sh msb_internal_apigateway` +echo MSB_IP=${MSB_IP} + +# Start esr-server +#docker run -d --name esr-server --env msbDiscoveryIp=${DISCOVERY_IP} --env msbDiscoveryPort=10081 nexus3.onap.org:10001/onap/aai/esr-server +#sudo docker run -e MSB_ADDR=${MSB_IP}:80 nexus3.onap.org:10001/onap/aai/esr-server -p 9518:9518 -d --net=host --name esr-server +docker run -d --name esr-server -e MSB_ADDR=${MSB_IP}:80 nexus3.onap.org:10001/onap/aai/esr-server +#source ${SCRIPTS}/aai/esr-server/startup.sh i-esrserver ${MSB_IP} 80 +ESRSERVER_IP=`get-instance-ip.sh esr-server` +echo ESRSERVER_IP=${ESRSERVER_IP} + +# Wait for initialization +for i in {1..20}; do + curl -sS -m 1 ${ESRSERVER_IP}:9518 && curl -sS -m 1 ${MSB_IP}:80 && break + echo sleep $i + sleep $i +done + +# Wait for initialization +for i in {1..20}; do + HTTP_CODE=`curl -o /dev/null -s -w "%{http_code}" "${MSB_IP}:80/api/aai-esr-server/v1/test"` + if [ ${HTTP_CODE} -eq 200 ]; then + break; + else + sleep $i + fi +done + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v ESRSERVER_IP:${ESRSERVER_IP}" + + + diff --git a/test/csit/plans/aai/esr-server/teardown.sh b/test/csit/plans/aai/esr-server/teardown.sh new file mode 100644 index 000000000..93f413831 --- /dev/null +++ b/test/csit/plans/aai/esr-server/teardown.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# +# Copyright 2017 ZTE Corporation. +# +# 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. +# +# This script is sourced by run-csit.sh after Robot test completion. + +kill-instance.sh esr-server +kill-instance.sh msb_internal_apigateway +kill-instance.sh msb_discovery +kill-instance.sh msb_consul diff --git a/test/csit/plans/aai/esr-server/testplan.txt b/test/csit/plans/aai/esr-server/testplan.txt new file mode 100644 index 000000000..43ed23e92 --- /dev/null +++ b/test/csit/plans/aai/esr-server/testplan.txt @@ -0,0 +1,4 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +aai/esr-server/startup + diff --git a/test/csit/plans/aai/resources/docker-compose.yml b/test/csit/plans/aai/resources/docker-compose.yml index ab7823630..09d2a8127 100644 --- a/test/csit/plans/aai/resources/docker-compose.yml +++ b/test/csit/plans/aai/resources/docker-compose.yml @@ -9,6 +9,7 @@ services: - CHEF_BRANCH=master - CHEF_GIT_URL=http://gerrit.onap.org/r/aai - AAI_CORE_VERSION=1.1.0-SNAPSHOT + - LOCAL_USER_ID=${USER_ID} ports: - 8447:8447 logging: @@ -25,6 +26,8 @@ services: - CHEF_BRANCH=master - CHEF_GIT_URL=http://gerrit.onap.org/r/aai - AAI_CORE_VERSION=1.1.0-SNAPSHOT + - LOCAL_USER_ID=${USER_ID} + - DISABLE_UPDATE_QUERY=true ports: - 8446:8446 logging: @@ -48,7 +51,7 @@ services: max-size: "30m" max-file: "5" aai.hbase.simpledemo.openecomp.org: - image: ${HBASE_IMAGE} + image: ${HBASE_IMAGE}:${HBASE_VERSION} hostname: aai.hbase.simpledemo.openecomp.org ports: - 2181:2181 diff --git a/test/csit/plans/aai/resources/setup.sh b/test/csit/plans/aai/resources/setup.sh index 30b4b29b8..19beb6365 100644 --- a/test/csit/plans/aai/resources/setup.sh +++ b/test/csit/plans/aai/resources/setup.sh @@ -31,7 +31,7 @@ function wait_for_container() { CONTAINER_NAME="$1"; START_TEXT="$2"; - TIMEOUT=240 + TIMEOUT=360 # wait for the real startup AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l) @@ -54,8 +54,12 @@ DOCKER_COMPOSE_CMD="docker-compose"; export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1); export DOCKER_REGISTRY="nexus3.onap.org:10001"; export AAI_HAPROXY_IMAGE="${AAI_HAPROXY_IMAGE:-aaionap/haproxy}"; -export HBASE_IMAGE="${HBASE_IMAGE:-harisekhon/hbase}"; +export HBASE_IMAGE="${HBASE_IMAGE:-aaionap/hbase}"; +export HBASE_VERSION="${HBASE_VERSION:-1.2.0}"; +docker pull ${HBASE_IMAGE}:${HBASE_VERSION}; + +docker pull ${HBASE_IMAGE}:${HBASE_VERSION}; docker pull ${DOCKER_REGISTRY}/openecomp/aai-resources:${DOCKER_IMAGE_VERSION}; docker tag ${DOCKER_REGISTRY}/openecomp/aai-resources:${DOCKER_IMAGE_VERSION} ${DOCKER_REGISTRY}/openecomp/aai-resources:latest; @@ -71,25 +75,36 @@ wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0. wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8080'; wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:9095'; -# Start the resources microservice -RESOURCES_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-resources.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1); -wait_for_container ${RESOURCES_CONTAINER_NAME} '0.0.0.0:8447'; -docker logs ${CONTAINER_NAME}; - -# Start the traversal microservice -GRAPH_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-traversal.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | awk '{ print $2; }' | head -1); -wait_for_container ${GRAPH_CONTAINER_NAME} '0.0.0.0:8446'; +USER_EXISTS=$(check_if_user_exists aaiadmin); -# Start the haproxy to route requests between resources and traversal -HAPROXY_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai.api.simpledemo.openecomp.org 2>&1 |grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1); +function check_if_user_exists(){ + local user_id=$1; -echo "A&AI Microservices, resources and traversal, are up and running along with HAProxy"; + if [ -z "$user_id" ]; then + echo "Needs to provide at least one argument for check_if_user_exists func"; + exit 1; + fi; -docker exec $GRAPH_CONTAINER_NAME "/opt/app/aai-traversal/scripts/install/updateQueryData.sh" && { - echo "Successfully loaded the widget related data into db"; -} || { - echo "Unable to load widget related data into db"; + id -u ${user_id} > /dev/null 2>&1 && { + echo "1"; + } || { + echo "0"; + } } + +if [ "${USER_EXISTS}" -eq 0 ]; then + export USER_ID=9000; +else + export USER_ID=$(id -u aaiadmin); +fi; + +RESOURCES_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-resources.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1); +wait_for_container ${RESOURCES_CONTAINER_NAME} '0.0.0.0:8447'; + +docker logs ${RESOURCES_CONTAINER_NAME}; + +${DOCKER_COMPOSE_CMD} up -d aai-traversal.api.simpledemo.openecomp.org aai.api.simpledemo.openecomp.org +echo "A&AI Microservices, resources and traversal, are up and running along with HAProxy"; # Set the host ip for robot from the haproxy ROBOT_VARIABLES="-v HOST_IP:`ip addr show docker0 | head -3 | tail -1 | cut -d' ' -f6 | cut -d'/' -f1`" diff --git a/test/csit/plans/aai/traversal/docker-compose.yml b/test/csit/plans/aai/traversal/docker-compose.yml new file mode 100644 index 000000000..01dd4b481 --- /dev/null +++ b/test/csit/plans/aai/traversal/docker-compose.yml @@ -0,0 +1,72 @@ +version: '2' +services: + aai-resources.api.simpledemo.openecomp.org: + image: ${DOCKER_REGISTRY}/openecomp/aai-resources + hostname: aai-resources.api.simpledemo.openecomp.org + environment: + - AAI_CHEF_ENV=simpledemo + - AAI_CHEF_LOC=/var/chef/aai-data/environments + - CHEF_BRANCH=master + - CHEF_GIT_URL=http://gerrit.onap.org/r/aai + - AAI_CORE_VERSION=1.1.0-SNAPSHOT + - LOCAL_USER_ID=${USER_ID} + ports: + - 8447:8447 + logging: + driver: "json-file" + options: + max-size: "30m" + max-file: "5" + aai-traversal.api.simpledemo.openecomp.org: + image: ${DOCKER_REGISTRY}/openecomp/aai-traversal + hostname: aai-traversal.api.simpledemo.openecomp.org + environment: + - AAI_CHEF_ENV=simpledemo + - AAI_CHEF_LOC=/var/chef/aai-data/environments + - CHEF_BRANCH=master + - CHEF_GIT_URL=http://gerrit.onap.org/r/aai + - AAI_CORE_VERSION=1.1.0-SNAPSHOT + - DISABLE_UPDATE_QUERY=true + ports: + - 8446:8446 + logging: + driver: "json-file" + options: + max-size: "30m" + max-file: "5" + aai.api.simpledemo.openecomp.org: + image: ${AAI_HAPROXY_IMAGE} + hostname: aai.api.simpledemo.openecomp.org + ports: + - 8443:8443 + links: + - aai-resources.api.simpledemo.openecomp.org + - aai-traversal.api.simpledemo.openecomp.org + volumes: + - /dev/log:/dev/log + logging: + driver: "json-file" + options: + max-size: "30m" + max-file: "5" + aai.hbase.simpledemo.openecomp.org: + image: ${HBASE_IMAGE}:${HBASE_VERSION} + hostname: aai.hbase.simpledemo.openecomp.org + ports: + - 2181:2181 + - 8080:8080 + - 8085:8085 + - 9090:9090 + - 16000:16000 + - 16010:16010 + - 16201:16201 + logging: + driver: "json-file" + options: + max-size: "30m" + max-file: "5" +networks: + default: + driver: bridge + driver_opts: + com.docker.network.driver.mtu: ${MTU} diff --git a/test/csit/plans/aai/traversal/setup.sh b/test/csit/plans/aai/traversal/setup.sh new file mode 100644 index 000000000..010b0352e --- /dev/null +++ b/test/csit/plans/aai/traversal/setup.sh @@ -0,0 +1,110 @@ +#!/bin/bash +# +# Copyright © 2017 AT&T Intellectual Property. +# All rights reserved. +# +# 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. +# +# ECOMP is a trademark and service mark of AT&T Intellectual Property. + +source ${SCRIPTS}/common_functions.sh + +NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt) +NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt) +NEXUS_DOCKER_REPO=$(cat /opt/config/nexus_docker_repo.txt) +DOCKER_IMAGE_VERSION=$(cat /opt/config/docker_version.txt) +DOCKER_REGISTRY=${NEXUS_DOCKER_REPO} +DOCKER_IMAGE_VERSION=1.1-STAGING-latest + +function wait_for_container() { + + CONTAINER_NAME="$1"; + START_TEXT="$2"; + + TIMEOUT=360 + + # wait for the real startup + AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l) + while [[ ${AMOUNT_STARTUP} -ne 1 ]]; + do + echo "Waiting for '$CONTAINER_NAME' deployment to finish ..." + AMOUNT_STARTUP=$(docker logs ${CONTAINER_NAME} 2>&1 | grep "$START_TEXT" | wc -l) + if [ "$TIMEOUT" = "0" ]; + then + docker logs ${CONTAINER_NAME}; + echo "ERROR: $CONTAINER_NAME deployment failed." + exit 1 + fi + let TIMEOUT-=1 + sleep 1 + done +} + +DOCKER_COMPOSE_CMD="docker-compose"; +export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1); +export DOCKER_REGISTRY="nexus3.onap.org:10001"; +export AAI_HAPROXY_IMAGE="${AAI_HAPROXY_IMAGE:-aaionap/haproxy}"; +export HBASE_IMAGE="${HBASE_IMAGE:-aaionap/hbase}"; +export HBASE_VERSION="${HBASE_VERSION:-1.2.0}"; + +docker pull ${HBASE_IMAGE}:${HBASE_VERSION}; + +docker pull ${DOCKER_REGISTRY}/openecomp/aai-resources:${DOCKER_IMAGE_VERSION}; +docker tag ${DOCKER_REGISTRY}/openecomp/aai-resources:${DOCKER_IMAGE_VERSION} ${DOCKER_REGISTRY}/openecomp/aai-resources:latest; + +docker pull ${DOCKER_REGISTRY}/openecomp/aai-traversal:${DOCKER_IMAGE_VERSION}; +docker tag ${DOCKER_REGISTRY}/openecomp/aai-traversal:${DOCKER_IMAGE_VERSION} ${DOCKER_REGISTRY}/openecomp/aai-traversal:latest; + +${DOCKER_COMPOSE_CMD} stop +${DOCKER_COMPOSE_CMD} rm -f -v + +# Start the hbase where the data will be stored +HBASE_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai.hbase.simpledemo.openecomp.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1); +wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8085'; +wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:8080'; +wait_for_container ${HBASE_CONTAINER_NAME} ' Started SelectChannelConnector@0.0.0.0:9095'; + +USER_EXISTS=$(check_if_user_exists aaiadmin); + +function check_if_user_exists(){ + local user_id=$1; + + if [ -z "$user_id" ]; then + echo "Needs to provide at least one argument for check_if_user_exists func"; + exit 1; + fi; + + id -u ${user_id} > /dev/null 2>&1 && { + echo "1"; + } || { + echo "0"; + } +} + + +if [ "${USER_EXISTS}" -eq 0 ]; then + export USER_ID=9000; +else + export USER_ID=$(id -u aaiadmin); +fi; + +RESOURCES_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-resources.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1); +wait_for_container ${RESOURCES_CONTAINER_NAME} '0.0.0.0:8447'; + +TRAVERSAL_CONTAINER_NAME=$(${DOCKER_COMPOSE_CMD} up -d aai-traversal.api.simpledemo.openecomp.org 2>&1 | grep 'Creating' | grep -v 'volume' | grep -v 'network' | awk '{ print $2; }' | head -1); +wait_for_container ${TRAVERSAL_CONTAINER_NAME} '0.0.0.0:8446'; + +${DOCKER_COMPOSE_CMD} up -d aai.api.simpledemo.openecomp.org +echo "A&AI Microservices, resources and traversal, are up and running along with HAProxy"; +# Set the host ip for robot from the haproxy +ROBOT_VARIABLES="-v HOST_IP:`ip addr show docker0 | head -3 | tail -1 | cut -d' ' -f6 | cut -d'/' -f1`" diff --git a/test/csit/plans/aai/traversal/teardown.sh b/test/csit/plans/aai/traversal/teardown.sh new file mode 100644 index 000000000..8dd6358d8 --- /dev/null +++ b/test/csit/plans/aai/traversal/teardown.sh @@ -0,0 +1,27 @@ +#!/bin/bash +# +# Copyright © 2017 AT&T Intellectual Property. +# Copyright © 2017 Amdocs +# All rights reserved. +# +# 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. +# +# ECOMP is a trademark and service mark of AT&T Intellectual Property. + +DOCKER_COMPOSE_CMD="docker-compose"; +export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1); +export DOCKER_REGISTRY="nexus3.onap.org:10001"; + +$DOCKER_COMPOSE_CMD stop +$DOCKER_COMPOSE_CMD rm -f -v + diff --git a/test/csit/plans/aai/traversal/testplan.txt b/test/csit/plans/aai/traversal/testplan.txt new file mode 100644 index 000000000..9b48bf9b5 --- /dev/null +++ b/test/csit/plans/aai/traversal/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +aai/traversal/suite1 diff --git a/test/csit/plans/appc/healthcheck/bundle_query.sh b/test/csit/plans/appc/healthcheck/bundle_query.sh index f163ce5c2..45a92ea31 100755 --- a/test/csit/plans/appc/healthcheck/bundle_query.sh +++ b/test/csit/plans/appc/healthcheck/bundle_query.sh @@ -24,7 +24,7 @@ failed_bundles=$(docker exec appc_controller_container /opt/opendaylight/current echo "There are $num_failed_bundles failed bundles out of $num_bundles installed bundles." -if [ "$num_failed_bundles" -ge 1 ] || [ $num_bundles -le 400 ]; then +if [ "$num_failed_bundles" -ge 1 ] || [ "$num_bundles" == "" ]; then echo "There are $num_bundles bundles with $num_failed_bundles in a failed state. " echo "The following bundle(s) are in a failed state: " echo " $failed_bundles" diff --git a/test/csit/plans/appc/healthcheck/setup.sh b/test/csit/plans/appc/healthcheck/setup.sh index eaf488a65..8798e561a 100755 --- a/test/csit/plans/appc/healthcheck/setup.sh +++ b/test/csit/plans/appc/healthcheck/setup.sh @@ -24,7 +24,8 @@ export NEXUS_USERNAME=docker export NEXUS_PASSWD=docker export NEXUS_DOCKER_REPO=nexus3.onap.org:10001 export DMAAP_TOPIC=AUTO -export DOCKER_IMAGE_VERSION=1.1.0-SNAPSHOT-latest +export APPC_DOCKER_IMAGE_VERSION=1.1-STAGING-latest +export CCSDK_DOCKER_IMAGE_VERSION=0.1-STAGING-latest export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1) @@ -39,54 +40,27 @@ cd $WORKSPACE/archives git clone -b master --single-branch http://gerrit.onap.org/r/appc/deployment.git appc cd $WORKSPACE/archives/appc git pull -unset http_proxy https_proxy cd $WORKSPACE/archives/appc/docker-compose - sed -i "s/DMAAP_TOPIC_ENV=.*/DMAAP_TOPIC_ENV="$DMAAP_TOPIC"/g" docker-compose.yml docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO - -docker pull $NEXUS_DOCKER_REPO/openecomp/appc-image:$DOCKER_IMAGE_VERSION -docker tag $NEXUS_DOCKER_REPO/openecomp/appc-image:$DOCKER_IMAGE_VERSION openecomp/appc-image:latest - -docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:latest -docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:latest onap/ccsdk-dgbuilder-image:latest - +docker pull $NEXUS_DOCKER_REPO/openecomp/appc-image:$APPC_DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/openecomp/appc-image:$APPC_DOCKER_IMAGE_VERSION openecomp/appc-image:latest +docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$CCSDK_DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$CCSDK_DOCKER_IMAGE_VERSION onap/ccsdk-dgbuilder-image:latest # start APPC containers with docker compose and configuration from docker-compose.yml docker-compose up -d - # WAIT 5 minutes maximum and test every 5 seconds if APPC is up using HealthCheck API -TIME_OUT=500 +TIME_OUT=2000 INTERVAL=30 TIME=0 while [ "$TIME" -lt "$TIME_OUT" ]; do - response=$(curl --write-out '%{http_code}' --silent --output /dev/null -H "Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==" -X POST -H "X-FromAppId: csit-appc" -H "X-TransactionId: csit-appc" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8282/restconf/operations/SLI-API:healthcheck ); echo $response - - if [ "$response" == "200" ]; then - echo APPC started in $TIME seconds - break; - fi - - echo Sleep: $INTERVAL seconds before testing if APPC is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds - sleep $INTERVAL - TIME=$(($TIME+$INTERVAL)) -done - -if [ "$TIME" -ge "$TIME_OUT" ]; then - echo TIME OUT: Docker containers not started in $TIME_OUT seconds... Could cause problems for testing activities... -fi - -#sleep 800 - -TIME_OUT=1000 -INTERVAL=60 -TIME=0 -while [ "$TIME" -lt "$TIME_OUT" ]; do -response=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf system:start-level) -num_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) +startODL_status=$(docker exec appc_controller_container ps -e | grep startODL | wc -l) +waiting_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Waiting | wc -l) +run_level=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf system:start-level) - if [ "$response" == "Level 100" ] && [ "$num_bundles" -ge 400 ]; then - echo APPC karaf started in $TIME seconds + if [ "$run_level" == "Level 100" ] && [ "$startODL_status" -lt "1" ] && [ "$waiting_bundles" -lt "1" ] ; then + echo APPC started in $TIME seconds break; fi @@ -96,30 +70,10 @@ num_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bi done if [ "$TIME" -ge "$TIME_OUT" ]; then - echo TIME OUT: karaf session not started in $TIME_OUT seconds... Could cause problems for testing activities... + echo TIME OUT: Docker containers not started in $TIME_OUT seconds... Could cause problems for testing activities... fi -response=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf system:start-level) -num_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) - - if [ "$response" == "Level 100" ] && [ "$num_bundles" -ge 400 ]; then - num_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) - num_failed_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Failure | wc -l) - failed_bundles=$(docker exec appc_controller_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Failure) - echo There is/are $num_failed_bundles failed bundles out of $num_bundles installed bundles. - fi - -if [ "$num_failed_bundles" -ge 1 ]; then - echo "The following bundle(s) are in a failed state: " - echo " $failed_bundles" -fi +sleep 300 # Pass any variables required by Robot test suites in ROBOT_VARIABLES ROBOT_VARIABLES="-v SCRIPTS:${SCRIPTS}" - -if [ "$response" == "" ] || [ "$num_bundles" == "" ]; then - echo "Docker container appc_controller_container is not available. Exiting." - exit 1 -fi - - diff --git a/test/csit/plans/ccsdk/healthcheck/health_check.sh b/test/csit/plans/ccsdk/healthcheck/health_check.sh index db5795eae..ffc766fe9 100644 --- a/test/csit/plans/ccsdk/healthcheck/health_check.sh +++ b/test/csit/plans/ccsdk/healthcheck/health_check.sh @@ -17,7 +17,9 @@ SCRIPTS="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" echo $SCRIPTS -response=$(curl --write-out '%{http_code}' --silent --output /dev/null -H "Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==" -X POST -H "X-FromAppId: csit-sdnc" -H "X-TransactionId: csit-ccsdk" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8282/restconf/operations/SLI-API:healthcheck ) +unset http_proxy https_proxy + +response=$(curl --write-out '%{http_code}' --silent --output /dev/null -H "Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==" -X POST -H "X-FromAppId: csit-sdnc" -H "X-TransactionId: csit-ccsdk" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8383/restconf/operations/SLI-API:healthcheck ) if [ "$response" == "200" ]; then echo "CCSDK health check passed." diff --git a/test/csit/plans/ccsdk/healthcheck/setup.sh b/test/csit/plans/ccsdk/healthcheck/setup.sh index babfe3eb1..78b4ff006 100644 --- a/test/csit/plans/ccsdk/healthcheck/setup.sh +++ b/test/csit/plans/ccsdk/healthcheck/setup.sh @@ -22,6 +22,11 @@ source ${WORKSPACE}/test/csit/scripts/ccsdk/script1.sh export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1) export NEXUS_DOCKER_REPO="nexus3.onap.org:10001" +export NEXUS_USERNAME=docker +export NEXUS_PASSWD=docker +export DMAAP_TOPIC=AUTO +export CCSDK_DOCKER_IMAGE_VERSION=0.1-STAGING-latest + if [ "$MTU" == "" ]; then export MTU="1450" fi @@ -37,16 +42,16 @@ unset http_proxy https_proxy cd $WORKSPACE/archives/ccsdk/src/main/yaml sed -i "s/DMAAP_TOPIC_ENV=.*/DMAAP_TOPIC_ENV="AUTO"/g" docker-compose.yml -docker login -u docker -p docker nexus3.onap.org:10001 +docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO -docker pull nexus3.onap.org:10001/onap/ccsdk-odl-image:0.1-STAGING-latest -docker tag nexus3.onap.org:10001/onap/ccsdk-odl-image:latest onap/ccsdk-odl-image:0.1-STAGING-latest +docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-odl-image:$CCSDK_DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-odl-image:$CCSDK_DOCKER_IMAGE_VERSION onap/ccsdk-odl-image:0.1-STAGING-latest -docker pull nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:0.1-STAGING-latest -docker tag nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:latest onap/ccsdk-dgbuilder-image:0.1-STAGING-latest +docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$CCSDK_DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$CCSDK_DOCKER_IMAGE_VERSION onap/ccsdk-dgbuilder-image:0.1-STAGING-latest -docker pull nexus3.onap.org:10001/onap/ccsdk-odlsli-image:0.1-STAGING-latest -docker tag nexus3.onap.org:10001/onap/ccsdk-odlsli-image:latest onap/ccsdk-odlsli-image:0.1-STAGING-latest +docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-odlsli-image:$CCSDK_DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-odlsli-image:$CCSDK_DOCKER_IMAGE_VERSION onap/ccsdk-odlsli-image:0.1-STAGING-latest # start CCSDK containers with docker compose and configuration from docker-compose.yml curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > docker-compose @@ -58,7 +63,7 @@ TIME_OUT=500 INTERVAL=30 TIME=0 while [ "$TIME" -lt "$TIME_OUT" ]; do - response=$(curl --write-out '%{http_code}' --silent --output /dev/null -H "Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==" -X POST -H "X-FromAppId: csit-ccsdk" -H "X-TransactionId: csit-ccsdk" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8282/restconf/operations/SLI-API:healthcheck ); echo $response + response=$(curl --write-out '%{http_code}' --silent --output /dev/null -H "Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==" -X POST -H "X-FromAppId: csit-ccsdk" -H "X-TransactionId: csit-ccsdk" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8383/restconf/operations/SLI-API:healthcheck ); echo $response if [ "$response" == "200" ]; then echo CCSDK started in $TIME seconds @@ -81,10 +86,10 @@ INTERVAL=60 TIME=0 while [ "$TIME" -lt "$TIME_OUT" ]; do -response=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf system:start-level) -num_bundles=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) +response=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf system:start-level) +num_bundles=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) - if [ "$response" == "Level 100" ] && [ "$num_bundles" -ge 64 ]; then + if [ "$response" == "Level 100" ] && [ "$num_bundles" -ge 333 ]; then echo CCSDK karaf started in $TIME seconds break; fi @@ -98,13 +103,13 @@ if [ "$TIME" -ge "$TIME_OUT" ]; then echo TIME OUT: karaf session not started in $TIME_OUT seconds... Could cause problems for testing activities... fi -response=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf system:start-level) -num_bundles=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) +response=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf system:start-level) +num_bundles=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) - if [ "$response" == "Level 100" ] && [ "$num_bundles" -ge 64 ]; then - num_bundles=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) - num_failed_bundles=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Failure | wc -l) - failed_bundles=$(docker exec ccsdk_bareodl_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Failure) + if [ "$response" == "Level 100" ] && [ "$num_bundles" -ge 333 ]; then + num_bundles=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf bundle:list | tail -1 | cut -d\| -f1) + num_failed_bundles=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Failure | wc -l) + failed_bundles=$(docker exec ccsdk_odlsli_container /opt/opendaylight/current/bin/client -u karaf bundle:list | grep Failure) echo There is/are $num_failed_bundles failed bundles out of $num_bundles installed bundles. fi diff --git a/test/csit/plans/ccsdk/healthcheck/teardown.sh b/test/csit/plans/ccsdk/healthcheck/teardown.sh index 60433f8ce..fbc0dfa42 100644 --- a/test/csit/plans/ccsdk/healthcheck/teardown.sh +++ b/test/csit/plans/ccsdk/healthcheck/teardown.sh @@ -18,7 +18,7 @@ # kill-instance.sh ccsdk_db_container -kill-instance.sh sdnc_dgbuilder_container +kill-instance.sh ccsdk_dgbuilder_container kill-instance.sh ccsdk_bareodl_container kill-instance.sh ccsdk_odlsli_container diff --git a/test/csit/plans/cli/sanity-check/setup.sh b/test/csit/plans/cli/sanity-check/setup.sh index d1d0ab6f0..17fb18c45 100644 --- a/test/csit/plans/cli/sanity-check/setup.sh +++ b/test/csit/plans/cli/sanity-check/setup.sh @@ -18,7 +18,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/dcaegen2/testsuites/setup.sh b/test/csit/plans/dcaegen2/testsuites/setup.sh index 3068b5026..6692bb209 100755 --- a/test/csit/plans/dcaegen2/testsuites/setup.sh +++ b/test/csit/plans/dcaegen2/testsuites/setup.sh @@ -20,7 +20,6 @@ #get current host IP addres HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') -echo HOST_IP=${HOST_IP} VESC_IMAGE=nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.ves.vescollector:1.1 echo VESC_IMAGE=${VESC_IMAGE} @@ -30,9 +29,11 @@ docker run -d -p 8080:8080/tcp -p 8443:8443/tcp -P --name vesc -e DMAAPHOST=${HO VESC_IP=`get-instance-ip.sh vesc` export VESC_IP=${VESC_IP} +export HOST_IP=${HOST_IP} export ROBOT_VARIABLES="--pythonpath ${WORKSPACE}/test/csit/tests/dcaegen2/testcases/resources" +pip install jsonschema uuid # Wait container ready sleep 5 diff --git a/test/csit/plans/holmes-rule-management/sanity-check/setup.sh b/test/csit/plans/holmes-rule-management/sanity-check/setup.sh index 681a9e789..ae78ec49a 100644 --- a/test/csit/plans/holmes-rule-management/sanity-check/setup.sh +++ b/test/csit/plans/holmes-rule-management/sanity-check/setup.sh @@ -26,7 +26,7 @@ echo DB_IP=${DB_IP} docker login -u docker -p docker nexus3.onap.org:10001 # Start MSB -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 CONSUL_IP=`get-instance-ip.sh msb_consul` echo CONSUL_IP=${CONSUL_IP} docker run -d -p 10081:10081 -e CONSUL_IP=$CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery diff --git a/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/setup.sh b/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/setup.sh new file mode 100644 index 000000000..03d07defb --- /dev/null +++ b/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/setup.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# +# Copyright 2017 AT&T +# +# 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. +# +# Modifications copyright (c) 2017 AT&T Intellectual Property +# +# Place the scripts in run order: + +source ${WORKSPACE}/test/csit/scripts/modeling-toscaparsers-javatoscachecker/setup_containers.sh + diff --git a/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/teardown.sh b/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/teardown.sh new file mode 100644 index 000000000..1ecaad4d2 --- /dev/null +++ b/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/teardown.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# +# Modifications copyright (c) 2017 AT&T Intellectual Property +# + +source ${WORKSPACE}/test/csit/scripts/modeling-toscaparsers-javatoscachecker/teardown_containers.sh + diff --git a/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/testplan.txt b/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/testplan.txt new file mode 100644 index 000000000..f59237bd4 --- /dev/null +++ b/test/csit/plans/modeling-toscaparsers-javatoscachecker/APIs/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +modeling-toscaparsers-javatoscachecker/APIs diff --git a/test/csit/plans/msb/iag-redirect-discovery/setup.sh b/test/csit/plans/msb/iag-redirect-discovery/setup.sh index e14c28fe6..70614c5c8 100644 --- a/test/csit/plans/msb/iag-redirect-discovery/setup.sh +++ b/test/csit/plans/msb/iag-redirect-discovery/setup.sh @@ -18,7 +18,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/msb/rest-service/setup.sh b/test/csit/plans/msb/rest-service/setup.sh index 9682cde74..8d344db8d 100644 --- a/test/csit/plans/msb/rest-service/setup.sh +++ b/test/csit/plans/msb/rest-service/setup.sh @@ -18,7 +18,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/msb/sanity-check/setup.sh b/test/csit/plans/msb/sanity-check/setup.sh index 21bb18f7d..e44f4371b 100644 --- a/test/csit/plans/msb/sanity-check/setup.sh +++ b/test/csit/plans/msb/sanity-check/setup.sh @@ -18,7 +18,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/msb/tcp-service/setup.sh b/test/csit/plans/msb/tcp-service/setup.sh index 1a315e516..ea2bafdfb 100644 --- a/test/csit/plans/msb/tcp-service/setup.sh +++ b/test/csit/plans/msb/tcp-service/setup.sh @@ -18,7 +18,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/multicloud-vmware/functionality1/setup.sh b/test/csit/plans/multicloud-vmware/functionality1/setup.sh new file mode 100755 index 000000000..d71d5c423 --- /dev/null +++ b/test/csit/plans/multicloud-vmware/functionality1/setup.sh @@ -0,0 +1,33 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# +# Place the scripts in run order: +# Start all process required for executing test case + +source ${SCRIPTS}/common_functions.sh + +# start multicloud-vio +docker run -d --name multicloud-vio nexus3.onap.org:10001/onap/multicloud/vio +VIO_IP=`get-instance-ip.sh multicloud-vio` +for i in {1..50}; do + curl -sS ${VIO_IP}:9004 && break + echo sleep $i + sleep $i +done + +echo SCRIPTS +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v VIO_IP:${VIO_IP} -v SCRIPTS:${SCRIPTS}" diff --git a/test/csit/plans/multicloud-vmware/functionality1/teardown.sh b/test/csit/plans/multicloud-vmware/functionality1/teardown.sh new file mode 100755 index 000000000..546e01261 --- /dev/null +++ b/test/csit/plans/multicloud-vmware/functionality1/teardown.sh @@ -0,0 +1,19 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# + +# This script is sourced by run-csit.sh after Robot test completion. +kill-instance.sh multicloud-vio diff --git a/test/csit/plans/multicloud-vmware/functionality1/testplan.txt b/test/csit/plans/multicloud-vmware/functionality1/testplan.txt new file mode 100644 index 000000000..2f5ad1b6f --- /dev/null +++ b/test/csit/plans/multicloud-vmware/functionality1/testplan.txt @@ -0,0 +1,9 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +multicloud-vmware/provision/sanity_test_vio.robot +multicloud-vmware/provision/sanity_test_tenant.robot +multicloud-vmware/provision/sanity_test_image.robot +multicloud-vmware/provision/sanity_test_neutron.robot +multicloud-vmware/nova/sanity-flavor.robot +multicloud-vmware/nova/sanity-host.robot +multicloud-vmware/nova/sanity-server.robot diff --git a/test/csit/plans/policy/health/setup.sh b/test/csit/plans/policy/health/setup.sh index 241d78b22..21f58eb66 100755 --- a/test/csit/plans/policy/health/setup.sh +++ b/test/csit/plans/policy/health/setup.sh @@ -15,10 +15,13 @@ # limitations under the License. # # Place the scripts in run order: -source ${WORKSPACE}/test/csit/scripts/policy/script1.sh +source ${SCRIPTS}/common_functions.sh docker run --name i-mock -d jamesdbloom/mockserver MOCK_IP=`get-instance-ip.sh i-mock` +echo ${MOCK_IP} + +docker inspect i-mock # Wait for initialization for i in {1..10}; do @@ -29,6 +32,14 @@ done ${WORKSPACE}/test/csit/scripts/policy/mock-hello.sh ${MOCK_IP} +source ${WORKSPACE}/test/csit/scripts/policy/script1.sh + # Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP}" +ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v POLICY_IP:${POLICY_IP} -v PDP_IP:${PDP_IP} -v DOCKER_IP:${DOCKER_IP}" +export PDP_IP=${PDP_IP} +export POLICY_IP=${POLICY_IP} +export DOCKER_IP=${DOCKER_IP} +#Get current IP of VM +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') +export HOST_IP=${HOST_IP} diff --git a/test/csit/plans/policy/health/teardown.sh b/test/csit/plans/policy/health/teardown.sh index 4214c8279..f1f0b21ce 100755 --- a/test/csit/plans/policy/health/teardown.sh +++ b/test/csit/plans/policy/health/teardown.sh @@ -15,6 +15,22 @@ # limitations under the License. # -kill-instance.sh i-mock +function kill_instance() { +local name=$1 +docker logs "${name}" >> "${WORKSPACE}"/archives/"${name}".log +docker kill "${name}" +docker rm -v "${name}" +} +mkdir -p "${WORKSPACE}"/archives + +kill_instance i-mock +kill_instance drools +kill_instance pdp +kill_instance brmsgw +kill_instance pap +kill_instance nexus +kill_instance mariadb + +rm -fr "${WORK_DIR}" diff --git a/test/csit/plans/portal-sdk/testsuite/.env b/test/csit/plans/portal-sdk/testsuite/.env new file mode 100644 index 000000000..0b7de9560 --- /dev/null +++ b/test/csit/plans/portal-sdk/testsuite/.env @@ -0,0 +1,33 @@ +# Environment settings +# used by docker-compose AND by other shell scripts +# Host directory with config files + +LOGS_DIR=./logs +PROPS_DIR=./properties + + +# Directory within containers +WEBAPPS_DIR=/opt/apache-tomcat-8.0.37/webapps + +# Following are ALSO used in demo/boot/portal_vm_init.sh +EP_IMG_NAME=onap/portal-apps +DB_IMG_NAME=onap/portal-db +WMS_IMG_NAME=onap/portal-wms +CLI_IMG_NAME=onap/cli + +# Tag all images with this +PORTAL_TAG=1.3.0 +DOCKER_IMAGE_VERSION=1.3-STAGING-latest +CLI_DOCKER_VERSION=1.1-STAGING-latest +NEXUS_DOCKER_REPO=nexus3.onap.org:10003 + + +# Optional settings with no defaults. +EXTRA_HOST_IP="" +EXTRA_HOST_NAME="" +# Export shell environment variables on hosts with no DNS; +# a line is added to docker container's /etc/hosts. +# For example: +#EXTRA_HOST_IP="-i ${HOST_IP}" +#EXTRA_HOST_NAME="-n portal.api.simpledemo.openecomp.org" + diff --git a/test/csit/plans/portal-sdk/testsuite/docker-compose.yml b/test/csit/plans/portal-sdk/testsuite/docker-compose.yml new file mode 100644 index 000000000..7a9fb8caa --- /dev/null +++ b/test/csit/plans/portal-sdk/testsuite/docker-compose.yml @@ -0,0 +1,98 @@ +# docker-compose for ONAP portal containers: database, microservice, portal apps. +# Relies on .env file in current directory. +# Works in multiple environments; does not pull from a Nexus registry. +# Exposes the portal apps docker (but not DB nor WMS dockers) on the host network. +# Images must be pulled from ONAP Nexus registry after logging in like this: +# docker login -u USER -p PASS nexus3.onap.org:10001 + +version: '2.0' + +services: + + cli: + image: ${CLI_IMG_NAME}:${PORTAL_TAG} + environment: + CLI_MODE: 'daemon' + ports: + - 8080:80 + - 9090:8080 + logging: + driver: json-file + + # Config files may use hostname "portal-db" + portal-db: + image: ${DB_IMG_NAME}:${PORTAL_TAG} + environment: + MYSQL_ROOT_PASSWORD: 'Aa123456' + expose: + - 3306 + volumes: + # Just specify a path and let the Engine create a volume + - /var/lib/mysql + logging: + driver: json-file + + # An environment variable here CAN override the database URL; + # instead the value in the config file uses hostname from above + portal-wms: + image: ${WMS_IMG_NAME}:${PORTAL_TAG} + expose: + - 8082 + links: + - portal-db + depends_on: + - portal-db + volumes: + - ${PROPS_DIR}/ECOMPWIDGETMS/application.properties:/application.properties + command: + - /wait-for.sh + - -t + - "420" + - portal-db:3306 + - -- + - /start-wms-cmd.sh + logging: + driver: json-file + + # Environment variables here CANNOT override the database URL because + # two apps use identical configuration keys with different values + portal-apps: + image: ${EP_IMG_NAME}:${PORTAL_TAG} + expose: + - 8989 + ports: + - 8989:8080 + - 8010:8009 + - 8006:8005 + links: + - portal-db + - portal-wms + depends_on: + - portal-db + - portal-wms + volumes: + - ${PROPS_DIR}/ECOMPPORTALAPP/system.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/conf/system.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/fusion.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/fusion/conf/fusion.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/portal.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/classes/portal.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/openid-connect.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/classes/openid-connect.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/logback.xml:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/classes/logback.xml + - ${PROPS_DIR}/ECOMPSDKAPP/fusion.properties:${WEBAPPS_DIR}/ECOMPSDKAPP/WEB-INF/fusion/conf/fusion.properties + - ${PROPS_DIR}/ECOMPSDKAPP/system.properties:${WEBAPPS_DIR}/ECOMPSDKAPP/WEB-INF/conf/system.properties + - ${PROPS_DIR}/ECOMPSDKAPP/portal.properties:${WEBAPPS_DIR}/ECOMPSDKAPP/WEB-INF/classes/portal.properties + - ${PROPS_DIR}/ECOMPDBCAPP/system.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/conf/system.properties + - ${PROPS_DIR}/ECOMPDBCAPP/portal.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/classes/portal.properties + - ${PROPS_DIR}/ECOMPDBCAPP/dbcapp.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/dbcapp/dbcapp.properties + - ${PROPS_DIR}/ECOMPDBCAPP/fusion.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/fusion/conf/fusion.properties + - ${LOGS_DIR}:/opt/apache-tomcat-8.0.37/logs + command: + - /wait-for.sh + - -t + - "420" + - portal-db:3306 + - -- + - /start-apps-cmd.sh + # see comments in .env file + - $EXTRA_HOST_IP + - $EXTRA_HOST_NAME + logging: + driver: json-file diff --git a/test/csit/plans/portal-sdk/testsuite/setup.sh b/test/csit/plans/portal-sdk/testsuite/setup.sh new file mode 100644 index 000000000..456a9343d --- /dev/null +++ b/test/csit/plans/portal-sdk/testsuite/setup.sh @@ -0,0 +1,178 @@ +#!/bin/bash +# Starts docker containers for ONAP Portal +# This version for Amsterdam/R1 of Portal, uses docker-compose. +# Temporarily maintained in portal/deliveries area; +# replicated from the ONAP demo/boot area due to release concerns. + +# Start Xvfb +echo -e "Starting Xvfb on display ${DISPLAY} with res ${RES}" +Xvfb ${DISPLAY} -ac -screen 0 ${RES} +extension RANDR & +XVFBPID=$! +# Get pid of this spawned process to make sure we kill the correct process later + +#Get current IP of VM +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') +export HOST_IP=${HOST_IP} + + + +if ! ifconfig docker0; then +if ! ifconfig ens3; then +echo "Could not determine IP address" +exit 1 +fi +export DOCKER_IP_IP=`ifconfig ens3 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'` +else +export DOCKER_IP=`ifconfig docker0 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'` +fi +echo $DOCKER_IP + + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +#ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v POLICY_IP:${POLICY_IP} -v DOCKER_IP:${DOCKER_IP}" +#export PORTAL_IP=${PORTAL_IP} +ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v DOCKER_IP:${DOCKER_IP}" +export DOCKER_IP=${DOCKER_IP} + + + + +# be verbose +set -x + +# Establish environment variables +NEXUS_USERNAME=docker +NEXUS_PASSWD=docker +NEXUS_DOCKER_REPO=nexus3.onap.org:10003 + + + +CURR="$(pwd)" +git clone http://gerrit.onap.org/r/portal + +# Refresh configuration and scripts +cd portal +git pull +cd deliveries +rm .env +#rm docker-compose.yml +cp $CURR/.env . +#cp $CURR/docker-compose.yml . +#cd properties_simpledemo/ECOMPPORTALAPP +#rm system.properties +#cp $CURR/system.properties . +#cd ../.. +# Get image names used below from docker-compose environment file +source $CURR/.env +#source .env + +# Make inter-app communication work in CSIT +export EXTRA_HOST_IP="-i ${HOST_IP}" +export EXTRA_HOST_NAME="-n portal.api.simpledemo.onap.org" + + +# Copy property files to new directory +mkdir -p $PROPS_DIR +cp -r properties_simpledemo/* $PROPS_DIR +# Also create logs directory +mkdir -p $LOGS_DIR + + +# Refresh images +docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO +docker pull $NEXUS_DOCKER_REPO/${DB_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/${EP_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/${WMS_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/$CLI_IMG_NAME:$CLI_DOCKER_VERSION + +# Tag them as expected by docker-compose file +docker tag $NEXUS_DOCKER_REPO/${DB_IMG_NAME}:$DOCKER_IMAGE_VERSION $DB_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/${EP_IMG_NAME}:$DOCKER_IMAGE_VERSION $EP_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/${WMS_IMG_NAME}:$DOCKER_IMAGE_VERSION $WMS_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/$CLI_IMG_NAME:$CLI_DOCKER_VERSION $CLI_IMG_NAME:$PORTAL_TAG + + +# compose is not in /usr/bin +docker-compose down +docker-compose up -d + +#${HOSTNAME}="portal.api.simpledemo.openecomp.org" +#echo "$HOST_IP ${HOSTNAME}" >> /etc/hosts + +#echo "$HOST_IP portal.api.simpledemo.openecomp.org" >> /etc/hosts +#sudo sed -i "2i$HOST_IP portal.api.simpledemo.openecomp.org" /etc/hosts + +#HOST="portal.api.simpledemo.openecomp.org" +#sudo sed -i "/$HOST/ s/.*/$HOST_IP\t$HOST/g" /etc/hosts + +# insert/update hosts entry +ip_address=$HOST_IP +host_name="portal.api.simpledemo.onap.org" +# find existing instances in the host file and save the line numbers +matches_in_hosts="$(grep -n $host_name /etc/hosts | cut -f1 -d:)" +host_entry="${ip_address} ${host_name}" + +echo "$host_entry" + +if [ ! -z "$matches_in_hosts" ] +then +echo "Updating existing hosts entry." +# iterate over the line numbers on which matches were found +while read -r line_number; do +# replace the text of each line with the desired host entry +sudo sed -i '' "${line_number}s/.*/${host_entry} /" /etc/hosts +echo "${line_number} ${host_entry}" +done <<< "$matches_in_hosts" +else +echo "Adding new hosts entry." +echo "$host_entry" | sudo tee -a /etc/hosts > /dev/null +fi + + + +sleep 3m + +# WAIT 5 minutes maximum and test every 5 seconds if Portal up using HealthCheck API +TIME_OUT=500 +INTERVAL=20 +TIME=0 +while [ "$TIME" -lt "$TIME_OUT" ]; do + response=$(curl --write-out '%{http_code}' --silent --output /dev/null http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/portalApi/healthCheck); echo $response + + if [ "$response" == "200" ]; then + echo Portal and its database well started in $TIME seconds + break; + fi + + echo Sleep: $INTERVAL seconds before testing if Portal is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds + sleep $INTERVAL + TIME=$(($TIME+$INTERVAL)) +done + +if [ "$TIME" -ge "$TIME_OUT" ]; then + echo TIME OUT: Docker containers not started in $TIME_OUT seconds... Could cause problems for tests... +fi + +#sleep 3m + + + +#if [ "$TIME" -ge "$TIME_OUT" ]; then +# echo TIME OUT: Docker containers not started in $TIME_OUT seconds... Could cause problems for tests... +#fi + + + + + +#Get current IP of VM +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') +export HOST_IP=${HOST_IP} + +#docker logs deliveries_portal-db_1 +docker logs deliveries_portal-apps_1 +docker logs deliveries_portal-wms_1 + + + + diff --git a/test/csit/plans/portal-sdk/testsuite/teardown.sh b/test/csit/plans/portal-sdk/testsuite/teardown.sh new file mode 100644 index 000000000..e0431a72f --- /dev/null +++ b/test/csit/plans/portal-sdk/testsuite/teardown.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# +# Copyright 2017 AT&T Intellectual Property. All rights reserved. +# +# 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. +# + +docker kill $(docker ps -q) + + diff --git a/test/csit/plans/portal-sdk/testsuite/testplan.txt b/test/csit/plans/portal-sdk/testsuite/testplan.txt new file mode 100644 index 000000000..27f8af34a --- /dev/null +++ b/test/csit/plans/portal-sdk/testsuite/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +portal-sdk/testsuites diff --git a/test/csit/plans/portal/testsuite/.env b/test/csit/plans/portal/testsuite/.env index fa3076859..0b7de9560 100644 --- a/test/csit/plans/portal/testsuite/.env +++ b/test/csit/plans/portal/testsuite/.env @@ -1,17 +1,33 @@ # Environment settings # used by docker-compose AND by other shell scripts - # Host directory with config files -PROJECT_DIR=/PROJECT/OpenSource/UbuntuEP + +LOGS_DIR=./logs +PROPS_DIR=./properties + # Directory within containers WEBAPPS_DIR=/opt/apache-tomcat-8.0.37/webapps # Following are ALSO used in demo/boot/portal_vm_init.sh -EP_IMG_NAME=portal-apps -DB_IMG_NAME=portal-db -WMS_IMG_NAME=portal-wms +EP_IMG_NAME=onap/portal-apps +DB_IMG_NAME=onap/portal-db +WMS_IMG_NAME=onap/portal-wms +CLI_IMG_NAME=onap/cli + # Tag all images with this -PORTAL_TAG=1.1.0 +PORTAL_TAG=1.3.0 +DOCKER_IMAGE_VERSION=1.3-STAGING-latest +CLI_DOCKER_VERSION=1.1-STAGING-latest +NEXUS_DOCKER_REPO=nexus3.onap.org:10003 + + +# Optional settings with no defaults. +EXTRA_HOST_IP="" +EXTRA_HOST_NAME="" +# Export shell environment variables on hosts with no DNS; +# a line is added to docker container's /etc/hosts. +# For example: +#EXTRA_HOST_IP="-i ${HOST_IP}" +#EXTRA_HOST_NAME="-n portal.api.simpledemo.openecomp.org" -NEXUS_REPO=nexus3.onap.org:10003 diff --git a/test/csit/plans/portal/testsuite/docker-compose.yml b/test/csit/plans/portal/testsuite/docker-compose.yml new file mode 100644 index 000000000..7a9fb8caa --- /dev/null +++ b/test/csit/plans/portal/testsuite/docker-compose.yml @@ -0,0 +1,98 @@ +# docker-compose for ONAP portal containers: database, microservice, portal apps. +# Relies on .env file in current directory. +# Works in multiple environments; does not pull from a Nexus registry. +# Exposes the portal apps docker (but not DB nor WMS dockers) on the host network. +# Images must be pulled from ONAP Nexus registry after logging in like this: +# docker login -u USER -p PASS nexus3.onap.org:10001 + +version: '2.0' + +services: + + cli: + image: ${CLI_IMG_NAME}:${PORTAL_TAG} + environment: + CLI_MODE: 'daemon' + ports: + - 8080:80 + - 9090:8080 + logging: + driver: json-file + + # Config files may use hostname "portal-db" + portal-db: + image: ${DB_IMG_NAME}:${PORTAL_TAG} + environment: + MYSQL_ROOT_PASSWORD: 'Aa123456' + expose: + - 3306 + volumes: + # Just specify a path and let the Engine create a volume + - /var/lib/mysql + logging: + driver: json-file + + # An environment variable here CAN override the database URL; + # instead the value in the config file uses hostname from above + portal-wms: + image: ${WMS_IMG_NAME}:${PORTAL_TAG} + expose: + - 8082 + links: + - portal-db + depends_on: + - portal-db + volumes: + - ${PROPS_DIR}/ECOMPWIDGETMS/application.properties:/application.properties + command: + - /wait-for.sh + - -t + - "420" + - portal-db:3306 + - -- + - /start-wms-cmd.sh + logging: + driver: json-file + + # Environment variables here CANNOT override the database URL because + # two apps use identical configuration keys with different values + portal-apps: + image: ${EP_IMG_NAME}:${PORTAL_TAG} + expose: + - 8989 + ports: + - 8989:8080 + - 8010:8009 + - 8006:8005 + links: + - portal-db + - portal-wms + depends_on: + - portal-db + - portal-wms + volumes: + - ${PROPS_DIR}/ECOMPPORTALAPP/system.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/conf/system.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/fusion.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/fusion/conf/fusion.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/portal.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/classes/portal.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/openid-connect.properties:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/classes/openid-connect.properties + - ${PROPS_DIR}/ECOMPPORTALAPP/logback.xml:${WEBAPPS_DIR}/ECOMPPORTAL/WEB-INF/classes/logback.xml + - ${PROPS_DIR}/ECOMPSDKAPP/fusion.properties:${WEBAPPS_DIR}/ECOMPSDKAPP/WEB-INF/fusion/conf/fusion.properties + - ${PROPS_DIR}/ECOMPSDKAPP/system.properties:${WEBAPPS_DIR}/ECOMPSDKAPP/WEB-INF/conf/system.properties + - ${PROPS_DIR}/ECOMPSDKAPP/portal.properties:${WEBAPPS_DIR}/ECOMPSDKAPP/WEB-INF/classes/portal.properties + - ${PROPS_DIR}/ECOMPDBCAPP/system.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/conf/system.properties + - ${PROPS_DIR}/ECOMPDBCAPP/portal.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/classes/portal.properties + - ${PROPS_DIR}/ECOMPDBCAPP/dbcapp.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/dbcapp/dbcapp.properties + - ${PROPS_DIR}/ECOMPDBCAPP/fusion.properties:${WEBAPPS_DIR}/ECOMPDBCAPP/WEB-INF/fusion/conf/fusion.properties + - ${LOGS_DIR}:/opt/apache-tomcat-8.0.37/logs + command: + - /wait-for.sh + - -t + - "420" + - portal-db:3306 + - -- + - /start-apps-cmd.sh + # see comments in .env file + - $EXTRA_HOST_IP + - $EXTRA_HOST_NAME + logging: + driver: json-file diff --git a/test/csit/plans/portal/testsuite/portal b/test/csit/plans/portal/testsuite/portal deleted file mode 160000 -Subproject e65a5d4a4852cbd0056fb3b881613f0a4dba4ec diff --git a/test/csit/plans/portal/testsuite/setup.sh b/test/csit/plans/portal/testsuite/setup.sh index a6c1ba483..456a9343d 100644 --- a/test/csit/plans/portal/testsuite/setup.sh +++ b/test/csit/plans/portal/testsuite/setup.sh @@ -1,40 +1,178 @@ #!/bin/bash -# Starts docker containers for ONAP Portal in Rackspace. -# Version for Amsterdam/R1 uses docker-compose. +# Starts docker containers for ONAP Portal +# This version for Amsterdam/R1 of Portal, uses docker-compose. +# Temporarily maintained in portal/deliveries area; +# replicated from the ONAP demo/boot area due to release concerns. + +# Start Xvfb +echo -e "Starting Xvfb on display ${DISPLAY} with res ${RES}" +Xvfb ${DISPLAY} -ac -screen 0 ${RES} +extension RANDR & +XVFBPID=$! +# Get pid of this spawned process to make sure we kill the correct process later + +#Get current IP of VM +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') +export HOST_IP=${HOST_IP} + + + +if ! ifconfig docker0; then +if ! ifconfig ens3; then +echo "Could not determine IP address" +exit 1 +fi +export DOCKER_IP_IP=`ifconfig ens3 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'` +else +export DOCKER_IP=`ifconfig docker0 | awk -F: '/inet addr/ {gsub(/ .*/,"",$2); print $2}'` +fi +echo $DOCKER_IP + + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +#ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v POLICY_IP:${POLICY_IP} -v DOCKER_IP:${DOCKER_IP}" +#export PORTAL_IP=${PORTAL_IP} +ROBOT_VARIABLES="-v MOCK_IP:${MOCK_IP} -v IP:${IP} -v DOCKER_IP:${DOCKER_IP}" +export DOCKER_IP=${DOCKER_IP} + + + # be verbose set -x # Establish environment variables -NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt) -NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt) -NEXUS_DOCKER_REPO=$(cat /opt/config/nexus_docker_repo.txt) -DOCKER_IMAGE_VERSION=$(cat /opt/config/docker_version.txt) +NEXUS_USERNAME=docker +NEXUS_PASSWD=docker +NEXUS_DOCKER_REPO=nexus3.onap.org:10003 + + + +CURR="$(pwd)" +git clone http://gerrit.onap.org/r/portal # Refresh configuration and scripts -cd /opt/portal +cd portal git pull cd deliveries - +rm .env +#rm docker-compose.yml +cp $CURR/.env . +#cp $CURR/docker-compose.yml . +#cd properties_simpledemo/ECOMPPORTALAPP +#rm system.properties +#cp $CURR/system.properties . +#cd ../.. # Get image names used below from docker-compose environment file -source .env +source $CURR/.env +#source .env + +# Make inter-app communication work in CSIT +export EXTRA_HOST_IP="-i ${HOST_IP}" +export EXTRA_HOST_NAME="-n portal.api.simpledemo.onap.org" + + +# Copy property files to new directory +mkdir -p $PROPS_DIR +cp -r properties_simpledemo/* $PROPS_DIR +# Also create logs directory +mkdir -p $LOGS_DIR -# Copy property files -ETC=/PROJECT/OpenSource/UbuntuEP/etc -mkdir -p $ETC -cp -r properties_rackspace/* $ETC # Refresh images docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO -docker pull $NEXUS_DOCKER_REPO/openecomp/${DB_IMG_NAME}:$DOCKER_IMAGE_VERSION -docker pull $NEXUS_DOCKER_REPO/openecomp/${EP_IMG_NAME}:$DOCKER_IMAGE_VERSION -docker pull $NEXUS_DOCKER_REPO/openecomp/${WMS_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/${DB_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/${EP_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/${WMS_IMG_NAME}:$DOCKER_IMAGE_VERSION +docker pull $NEXUS_DOCKER_REPO/$CLI_IMG_NAME:$CLI_DOCKER_VERSION # Tag them as expected by docker-compose file -docker tag $NEXUS_DOCKER_REPO/openecomp/${DB_IMG_NAME}:$DOCKER_IMAGE_VERSION $DB_IMG_NAME:$PORTAL_TAG -docker tag $NEXUS_DOCKER_REPO/openecomp/${EP_IMG_NAME}:$DOCKER_IMAGE_VERSION $EP_IMG_NAME:$PORTAL_TAG -docker tag $NEXUS_DOCKER_REPO/openecomp/${WMS_IMG_NAME}:$DOCKER_IMAGE_VERSION $WMS_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/${DB_IMG_NAME}:$DOCKER_IMAGE_VERSION $DB_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/${EP_IMG_NAME}:$DOCKER_IMAGE_VERSION $EP_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/${WMS_IMG_NAME}:$DOCKER_IMAGE_VERSION $WMS_IMG_NAME:$PORTAL_TAG +docker tag $NEXUS_DOCKER_REPO/$CLI_IMG_NAME:$CLI_DOCKER_VERSION $CLI_IMG_NAME:$PORTAL_TAG + + +# compose is not in /usr/bin +docker-compose down +docker-compose up -d + +#${HOSTNAME}="portal.api.simpledemo.openecomp.org" +#echo "$HOST_IP ${HOSTNAME}" >> /etc/hosts + +#echo "$HOST_IP portal.api.simpledemo.openecomp.org" >> /etc/hosts +#sudo sed -i "2i$HOST_IP portal.api.simpledemo.openecomp.org" /etc/hosts + +#HOST="portal.api.simpledemo.openecomp.org" +#sudo sed -i "/$HOST/ s/.*/$HOST_IP\t$HOST/g" /etc/hosts + +# insert/update hosts entry +ip_address=$HOST_IP +host_name="portal.api.simpledemo.onap.org" +# find existing instances in the host file and save the line numbers +matches_in_hosts="$(grep -n $host_name /etc/hosts | cut -f1 -d:)" +host_entry="${ip_address} ${host_name}" + +echo "$host_entry" + +if [ ! -z "$matches_in_hosts" ] +then +echo "Updating existing hosts entry." +# iterate over the line numbers on which matches were found +while read -r line_number; do +# replace the text of each line with the desired host entry +sudo sed -i '' "${line_number}s/.*/${host_entry} /" /etc/hosts +echo "${line_number} ${host_entry}" +done <<< "$matches_in_hosts" +else +echo "Adding new hosts entry." +echo "$host_entry" | sudo tee -a /etc/hosts > /dev/null +fi + + + +sleep 3m + +# WAIT 5 minutes maximum and test every 5 seconds if Portal up using HealthCheck API +TIME_OUT=500 +INTERVAL=20 +TIME=0 +while [ "$TIME" -lt "$TIME_OUT" ]; do + response=$(curl --write-out '%{http_code}' --silent --output /dev/null http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/portalApi/healthCheck); echo $response + + if [ "$response" == "200" ]; then + echo Portal and its database well started in $TIME seconds + break; + fi + + echo Sleep: $INTERVAL seconds before testing if Portal is up. Total wait time up now is: $TIME seconds. Timeout is: $TIME_OUT seconds + sleep $INTERVAL + TIME=$(($TIME+$INTERVAL)) +done + +if [ "$TIME" -ge "$TIME_OUT" ]; then + echo TIME OUT: Docker containers not started in $TIME_OUT seconds... Could cause problems for tests... +fi + +#sleep 3m + + + +#if [ "$TIME" -ge "$TIME_OUT" ]; then +# echo TIME OUT: Docker containers not started in $TIME_OUT seconds... Could cause problems for tests... +#fi + + + + + +#Get current IP of VM +HOST_IP=$(ip route get 8.8.8.8 | awk '/8.8.8.8/ {print $NF}') +export HOST_IP=${HOST_IP} + +#docker logs deliveries_portal-db_1 +docker logs deliveries_portal-apps_1 +docker logs deliveries_portal-wms_1 + + + -# docker-compose is not in /usr/bin -/opt/docker/docker-compose down -/opt/docker/docker-compose up -d diff --git a/test/csit/plans/portal/testsuite/teardown.sh b/test/csit/plans/portal/testsuite/teardown.sh index 4214c8279..e0431a72f 100644 --- a/test/csit/plans/portal/testsuite/teardown.sh +++ b/test/csit/plans/portal/testsuite/teardown.sh @@ -15,6 +15,6 @@ # limitations under the License. # -kill-instance.sh i-mock +docker kill $(docker ps -q) diff --git a/test/csit/plans/portal/testsuite/testplan.txt b/test/csit/plans/portal/testsuite/testplan.txt index 5aba3164c..d7b18a5ce 100644 --- a/test/csit/plans/portal/testsuite/testplan.txt +++ b/test/csit/plans/portal/testsuite/testplan.txt @@ -1,3 +1,3 @@ # Test suites are relative paths under [integration.git]/test/csit/tests/. # Place the suites in run order. -portal/Healthcheck +portal/testsuites diff --git a/test/csit/plans/sdc/healthCheck/setup.sh b/test/csit/plans/sdc/nightly/setup.sh index f247be656..3e4e66024 100644 --- a/test/csit/plans/sdc/healthCheck/setup.sh +++ b/test/csit/plans/sdc/nightly/setup.sh @@ -23,6 +23,10 @@ source ${WORKSPACE}/test/csit/scripts/sdc/clone_and_setup_sdc_data.sh source ${WORKSPACE}/test/csit/scripts/sdc/start_sdc_containers.sh +source ${WORKSPACE}/test/csit/scripts/sdc/docker_health.sh + +source ${WORKSPACE}/test/csit/scripts/sdc/start_sdc_sanity.sh + BE_IP=`get-instance-ip.sh sdc-BE` echo BE_IP=${BE_IP} diff --git a/test/csit/plans/sdc/healthCheck/teardown.sh b/test/csit/plans/sdc/nightly/teardown.sh index a5f69819e..a5f69819e 100644 --- a/test/csit/plans/sdc/healthCheck/teardown.sh +++ b/test/csit/plans/sdc/nightly/teardown.sh diff --git a/test/csit/plans/sdc/healthCheck/testplan.txt b/test/csit/plans/sdc/nightly/testplan.txt index 2b2db1ede..3011ad5cb 100644 --- a/test/csit/plans/sdc/healthCheck/testplan.txt +++ b/test/csit/plans/sdc/nightly/testplan.txt @@ -1,3 +1,3 @@ # Test suites are relative paths under [integration.git]/test/csit/tests/. # Place the suites in run order. -sdc/healthCheck +sdc/nightly diff --git a/test/csit/plans/sdc/sanity/setup.sh b/test/csit/plans/sdc/sanity/setup.sh new file mode 100644 index 000000000..3e4e66024 --- /dev/null +++ b/test/csit/plans/sdc/sanity/setup.sh @@ -0,0 +1,37 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# +# Modifications copyright (c) 2017 AT&T Intellectual Property +# +# Place the scripts in run order: + + +source ${WORKSPACE}/test/csit/scripts/sdc/clone_and_setup_sdc_data.sh + +source ${WORKSPACE}/test/csit/scripts/sdc/start_sdc_containers.sh + +source ${WORKSPACE}/test/csit/scripts/sdc/docker_health.sh + +source ${WORKSPACE}/test/csit/scripts/sdc/start_sdc_sanity.sh + + +BE_IP=`get-instance-ip.sh sdc-BE` +echo BE_IP=${BE_IP} + + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v BE_IP:${BE_IP}" + diff --git a/test/csit/plans/sdc/sanity/teardown.sh b/test/csit/plans/sdc/sanity/teardown.sh new file mode 100644 index 000000000..a5f69819e --- /dev/null +++ b/test/csit/plans/sdc/sanity/teardown.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# +# Copyright 2016-2017 Huawei Technologies Co., Ltd. +# +# 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. +# +# Modifications copyright (c) 2017 AT&T Intellectual Property +# + +source ${WORKSPACE}/test/csit/scripts/sdc/kill_containers_and_remove_dataFolders.sh + +# $WORKSPACE/archives/clamp-clone deleted with archives folder when tests starts so we keep it at the end for debugging diff --git a/test/csit/plans/sdc/sanity/testplan.txt b/test/csit/plans/sdc/sanity/testplan.txt new file mode 100644 index 000000000..801f37d38 --- /dev/null +++ b/test/csit/plans/sdc/sanity/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +sdc/sanity diff --git a/test/csit/plans/sdnc/healthcheck/health_check.sh b/test/csit/plans/sdnc/healthcheck/health_check.sh index 96c99848a..e8b5056d4 100644 --- a/test/csit/plans/sdnc/healthcheck/health_check.sh +++ b/test/csit/plans/sdnc/healthcheck/health_check.sh @@ -17,6 +17,8 @@ SCRIPTS="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" echo $SCRIPTS +unset http_proxy https_proxy + response=$(curl --write-out '%{http_code}' --silent --output /dev/null -H "Authorization: Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==" -X POST -H "X-FromAppId: csit-sdnc" -H "X-TransactionId: csit-sdnc" -H "Accept: application/json" -H "Content-Type: application/json" http://localhost:8282/restconf/operations/SLI-API:healthcheck ) if [ "$response" == "200" ]; then diff --git a/test/csit/plans/sdnc/healthcheck/setup.sh b/test/csit/plans/sdnc/healthcheck/setup.sh index 643d54fe9..5e51b0e6a 100644 --- a/test/csit/plans/sdnc/healthcheck/setup.sh +++ b/test/csit/plans/sdnc/healthcheck/setup.sh @@ -20,6 +20,13 @@ SCRIPTS="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" source ${WORKSPACE}/test/csit/scripts/sdnc/script1.sh +export NEXUS_USERNAME=docker +export NEXUS_PASSWD=docker +export NEXUS_DOCKER_REPO=nexus3.onap.org:10001 +export DMAAP_TOPIC=AUTO +export DOCKER_IMAGE_VERSION=1.2-STAGING-latest +export CCSDK_DOCKER_IMAGE_VERSION=0.1-STAGING-latest + export MTU=$(/sbin/ifconfig | grep MTU | sed 's/.*MTU://' | sed 's/ .*//' | sort -n | head -1) if [ "$MTU" == "" ]; then @@ -37,16 +44,16 @@ unset http_proxy https_proxy cd $WORKSPACE/archives/sdnc/installation/src/main/yaml sed -i "s/DMAAP_TOPIC_ENV=.*/DMAAP_TOPIC_ENV="AUTO"/g" docker-compose.yml -docker login -u docker -p docker nexus3.onap.org:10001 +docker login -u $NEXUS_USERNAME -p $NEXUS_PASSWD $NEXUS_DOCKER_REPO -docker pull nexus3.onap.org:10001/onap/sdnc-image:latest -docker tag nexus3.onap.org:10001/onap/sdnc-image:latest onap/sdnc-image:latest +docker pull $NEXUS_DOCKER_REPO/onap/sdnc-image:$DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/sdnc-image:$DOCKER_IMAGE_VERSION onap/sdnc-image:latest -docker pull nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:latest -docker tag nexus3.onap.org:10001/onap/ccsdk-dgbuilder-image:latest onap/ccsdk-dgbuilder-image:latest +docker pull $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$CCSDK_DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/ccsdk-dgbuilder-image:$CCSDK_DOCKER_IMAGE_VERSION onap/ccsdk-dgbuilder-image:latest -docker pull nexus3.onap.org:10001/onap/admportal-sdnc-image:latest -docker tag nexus3.onap.org:10001/onap/admportal-sdnc-image:latest onap/admportal-sdnc-image:latest +docker pull $NEXUS_DOCKER_REPO/onap/admportal-sdnc-image:$DOCKER_IMAGE_VERSION +docker tag $NEXUS_DOCKER_REPO/onap/admportal-sdnc-image:$DOCKER_IMAGE_VERSION onap/admportal-sdnc-image:latest # start SDNC containers with docker compose and configuration from docker-compose.yml curl -L https://github.com/docker/compose/releases/download/1.9.0/docker-compose-`uname -s`-`uname -m` > docker-compose @@ -113,6 +120,9 @@ if [ "$num_failed_bundles" -ge 1 ]; then echo " $failed_bundles" fi +# Sleep additional 120 to give application time to finish +sleep 120 + # Pass any variables required by Robot test suites in ROBOT_VARIABLES ROBOT_VARIABLES="-v SCRIPTS:${SCRIPTS}" diff --git a/test/csit/plans/sdnc/healthcheck/teardown.sh b/test/csit/plans/sdnc/healthcheck/teardown.sh index 4d99b9f31..925e7b732 100644 --- a/test/csit/plans/sdnc/healthcheck/teardown.sh +++ b/test/csit/plans/sdnc/healthcheck/teardown.sh @@ -21,5 +21,6 @@ kill-instance.sh sdnc_controller_container kill-instance.sh sdnc_dgbuilder_container kill-instance.sh sdnc_portal_container kill-instance.sh sdnc_db_container +kill-instance.sh sdnc_ueblistener_container # $WORKSPACE/archives/appc deleted with archives folder when tests starts so we keep it at the end for debugging diff --git a/test/csit/plans/usecase-ui-server/testsuite/setup.sh b/test/csit/plans/usecase-ui-server/testsuite/setup.sh new file mode 100644 index 000000000..b2641beca --- /dev/null +++ b/test/csit/plans/usecase-ui-server/testsuite/setup.sh @@ -0,0 +1,58 @@ +#!/bin/bash +# +# Copyright (C) 2017 CMCC, Inc. and others. All rights reserved. +# +# 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. +# +# Place the scripts in run order: +# Start all process required for executing test case + +source ${SCRIPTS}/common_functions.sh + +#start msb +docker run -d -p 8500:8500 --name msb_consul consul +MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` +echo MSB_CONSUL_IP=${MSB_CONSUL_IP} + +docker run -d -p 10081:10081 -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery +MSB_DISCOVERY_IP=`get-instance-ip.sh msb_discovery` +echo DISCOVERY_IP=${MSB_DISCOVERY_IP} + +docker run -d -p 80:80 -e CONSUL_IP=$MSB_CONSUL_IP -e SDCLIENT_IP=$MSB_DISCOVERY_IP -e "ROUTE_LABELS=visualRange:1" --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway +MSB_IAG_IP=`get-instance-ip.sh msb_internal_apigateway` +echo MSB_IAG_IP=${MSB_IAG_IP} + +# Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway) +for i in {1..10}; do + curl -sS -m 1 ${MSB_CONSUL_IP}:8500 && curl -sS -m 1 ${MSB_DISCOVERY_IP}:10081 && curl -sS -m 1 ${MSB_IAG_IP}:80 && break + echo sleep $i + sleep $i +done + +# Need some time for the initialization of MSB services +echo sleep 60 +sleep 60 + +# start usecase-ui-server +docker run -d --name usecase-ui-server -v /var/lib/mysql -e MSB_ADDR=${MSB_IAG_IP}:80 nexus3.onap.org:10001/onap/usecase-ui/usecase-ui-server +USECASEUI_IP=`get-instance-ip.sh usecase-ui-server` + +# Wait for initialization +for i in {1..10}; do + curl -sS -m 1 ${USECASEUI_IP}:8901 && break + echo sleep $i + sleep $i +done + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v USECASEUI_IP:${USECASEUI_IP} -v SCRIPTS:${SCRIPTS}" diff --git a/test/csit/plans/usecase-ui-server/testsuite/teardown.sh b/test/csit/plans/usecase-ui-server/testsuite/teardown.sh new file mode 100644 index 000000000..46f5879b3 --- /dev/null +++ b/test/csit/plans/usecase-ui-server/testsuite/teardown.sh @@ -0,0 +1,22 @@ +#!/bin/bash +# +# Copyright (C) 2017 CMCC, Inc. and others. All rights reserved. +# +# 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. +# + +# This script is sourced by run-csit.sh after Robot test completion. +kill-instance.sh msb_internal_apigateway +kill-instance.sh msb_discovery +kill-instance.sh msb_consul +kill-instance.sh usecase-ui-server diff --git a/test/csit/plans/usecase-ui-server/testsuite/testplan.txt b/test/csit/plans/usecase-ui-server/testsuite/testplan.txt new file mode 100644 index 000000000..ec7f200a4 --- /dev/null +++ b/test/csit/plans/usecase-ui-server/testsuite/testplan.txt @@ -0,0 +1,3 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. +usecase-ui/server/test.robot diff --git a/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh b/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh index 634c32722..63782a9f5 100755 --- a/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh +++ b/test/csit/plans/vfc-gvnfm-vnflcm/sanity-check/setup.sh @@ -20,7 +20,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} @@ -54,8 +54,11 @@ for i in {1..10}; do sleep $i done +docker cp vfc-vnflcm:/service/vfc/gvnfm/vnflcm/lcm/lcm/pub/config/config.py ./ +cat config.py + docker cp vfc-vnflcm:/service/vfc/gvnfm/vnflcm/lcm/logs/runtime_lcm.log ./ cat runtime_lcm.log # Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v VNFLCM_IP:${VNFLCM_IP}" +ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v VNFLCM_IP:${VNFLCM_IP} -v SCRIPTS:${SCRIPTS}" diff --git a/test/csit/plans/vfc-gvnfm-vnfmgr/sanity-check/setup.sh b/test/csit/plans/vfc-gvnfm-vnfmgr/sanity-check/setup.sh index ec315a24b..8a3f9af97 100755 --- a/test/csit/plans/vfc-gvnfm-vnfmgr/sanity-check/setup.sh +++ b/test/csit/plans/vfc-gvnfm-vnfmgr/sanity-check/setup.sh @@ -17,28 +17,40 @@ # Place the scripts in run order: # Start all process required for executing test case -#login to the onap nexus docker repo -docker login -u docker -p docker nexus3.onap.org:10001 - -# Start MSB -docker run -d -p 8500:8500 --name msb_consul nexus3.onap.org:10001/onap/msb/msb_base -CONSUL_IP=`get-instance-ip.sh msb_consul` -echo CONSUL_IP=${CONSUL_IP} -docker run -d -p 10081:10081 -e CONSUL_IP=$CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery -DISCOVERY_IP=`get-instance-ip.sh msb_discovery` -echo DISCOVERY_IP=${DISCOVERY_IP} -docker run -d -p 80:80 -e CONSUL_IP=$CONSUL_IP -e SDCLIENT_IP=$DISCOVERY_IP --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway -MSB_IP==`get-instance-ip.sh msb_internal_apigateway` -echo MSB_IP=${MSB_IP} +source ${SCRIPTS}/common_functions.sh + +#start msb +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 +MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` +echo MSB_CONSUL_IP=${MSB_CONSUL_IP} + +docker run -d -p 10081:10081 -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery +MSB_DISCOVERY_IP=`get-instance-ip.sh msb_discovery` +echo DISCOVERY_IP=${MSB_DISCOVERY_IP} + +docker run -d -p 80:80 -e CONSUL_IP=$MSB_CONSUL_IP -e SDCLIENT_IP=$MSB_DISCOVERY_IP --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway +MSB_IAG_IP=`get-instance-ip.sh msb_internal_apigateway` +echo MSB_IAG_IP=${MSB_IAG_IP} + +# Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway) +for i in {1..10}; do + curl -sS -m 1 ${MSB_CONSUL_IP}:8500 && curl -sS -m 1 ${MSB_DISCOVERY_IP}:10081 && curl -sS -m 1 ${MSB_IAG_IP}:80 && break + echo sleep $i + sleep $i +done + +# wait for container initalization +echo sleep 30 +sleep 30 # start vfc-vnfmgr -docker run -d --name vfc-vnfmgr -e MSB_ADDR=${MSB_IP}:80 nexus3.onap.org:10001/onap/vfc/vnfmgr +docker run -d --name vfc-vnfmgr -e MSB_ADDR=${MSB_IAG_IP}:80 nexus3.onap.org:10001/onap/vfc/vnfmgr VNFMGR_IP=`get-instance-ip.sh vfc-vnfmgr` for i in {1..10}; do - curl -sS ${VNFMGR_IP}:8803 && break + curl -sS -m 1 ${VNFMGR_IP}:8803 && break echo sleep $i sleep $i done # Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES="-v MSB_IP:${MSB_IP} -v VNFMGR_IP:${VNFMGR_IP}" +ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v VNFMGR_IP:${VNFMGR_IP} -v SCRIPTS:${SCRIPTS}" diff --git a/test/csit/plans/vfc-gvnfm-vnfres/sanity-check/setup.sh b/test/csit/plans/vfc-gvnfm-vnfres/sanity-check/setup.sh index 0139bcdcc..e976f9281 100755 --- a/test/csit/plans/vfc-gvnfm-vnfres/sanity-check/setup.sh +++ b/test/csit/plans/vfc-gvnfm-vnfres/sanity-check/setup.sh @@ -21,7 +21,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} docker run -d -p 10081:10081 -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery @@ -53,4 +53,4 @@ for i in {1..10}; do done # Pass any variables required by Robot test suites in ROBOT_VARIABLES -ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v VNFRES_IP:${VNFRES_IP}" +ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v VNFRES_IP:${VNFRES_IP} -v SCRIPTS:${SCRIPTS}" diff --git a/test/csit/plans/vfc-nfvo-catalog/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-catalog/sanity-check/setup.sh index 6374b88ba..3576e234d 100644 --- a/test/csit/plans/vfc-nfvo-catalog/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-catalog/sanity-check/setup.sh @@ -21,7 +21,7 @@ docker login -u docker -p docker nexus3.onap.org:10001 # start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 CONSUL_IP=`get-instance-ip.sh msb_consul` echo CONSUL_IP=${CONSUL_IP} @@ -48,7 +48,7 @@ sleep 60 docker run -d --name vfc-catalog -v /var/lib/mysql -e MSB_ADDR=${DISCOVERY_IP}:10081 nexus3.onap.org:10001/onap/vfc/catalog CATALOG_IP=`get-instance-ip.sh vfc-catalog` for i in {1..10}; do - curl -sS ${CATALOG_IP}:8806 && break + curl -sS -m 1 ${CATALOG_IP}:8806 && break echo sleep $i sleep $i done diff --git a/test/csit/plans/vfc-nfvo-driver-ems/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-driver-ems/sanity-check/setup.sh index 09978ca6d..d381f8f38 100755 --- a/test/csit/plans/vfc-nfvo-driver-ems/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-driver-ems/sanity-check/setup.sh @@ -20,7 +20,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/vfc-nfvo-driver-sfc/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-driver-sfc/sanity-check/setup.sh index 45ad0cbb1..85a3e69f1 100755 --- a/test/csit/plans/vfc-nfvo-driver-sfc/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-driver-sfc/sanity-check/setup.sh @@ -20,7 +20,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/vfc-nfvo-driver-vnfm-gvnfm/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-driver-vnfm-gvnfm/sanity-check/setup.sh index 283cb0d41..bdc66d0e1 100644 --- a/test/csit/plans/vfc-nfvo-driver-vnfm-gvnfm/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-driver-vnfm-gvnfm/sanity-check/setup.sh @@ -21,7 +21,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} docker run -d -p 10081:10081 -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery @@ -47,7 +47,7 @@ GVNFMDRIVER_IP=`get-instance-ip.sh vfc-gvnfmdriver` # Wait for initialization for i in {1..10}; do - curl -sS ${GVNFMDRIVER_IP}:8484 && break + curl -sS -m 1 ${GVNFMDRIVER_IP}:8484 && break echo sleep $i sleep $i done diff --git a/test/csit/plans/vfc-nfvo-driver-vnfm-svnfm/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-driver-vnfm-svnfm/sanity-check/setup.sh index 64fa5a4d0..f2eadb010 100644 --- a/test/csit/plans/vfc-nfvo-driver-vnfm-svnfm/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-driver-vnfm-svnfm/sanity-check/setup.sh @@ -21,7 +21,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} docker run -d -p 10081:10081 -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery @@ -57,7 +57,7 @@ done # Start svnfm-huawei docker run -d --name vfc-svnfm-huawei -e MSB_ADDR=${MSB_IAG_IP}:80 nexus3.onap.org:10001/onap/vfc/nfvo/svnfm/huawei SERVICE_IP=`get-instance-ip.sh vfc-svnfm-huawei` -for i in {1..10}; do +for i in {1..20}; do curl -sS ${SERVICE_IP}:8482 && break echo sleep $i sleep $i diff --git a/test/csit/plans/vfc-nfvo-lcm/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-lcm/sanity-check/setup.sh index 3cc53988c..74b0ab61d 100755 --- a/test/csit/plans/vfc-nfvo-lcm/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-lcm/sanity-check/setup.sh @@ -20,7 +20,7 @@ source ${SCRIPTS}/common_functions.sh #start msb -docker run -d -p 8500:8500 --name msb_consul consul +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` echo MSB_CONSUL_IP=${MSB_CONSUL_IP} diff --git a/test/csit/plans/vfc-nfvo-resmanagement/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-resmanagement/sanity-check/setup.sh index a18562eb7..68b784310 100644 --- a/test/csit/plans/vfc-nfvo-resmanagement/sanity-check/setup.sh +++ b/test/csit/plans/vfc-nfvo-resmanagement/sanity-check/setup.sh @@ -21,7 +21,7 @@ docker login -u docker -p docker nexus3.onap.org:10001 # Start MSB -docker run -d -p 8500:8500 --name msb_consul nexus3.onap.org:10001/onap/msb/msb_base +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 CONSUL_IP=`get-instance-ip.sh msb_consul` echo CONSUL_IP=${CONSUL_IP} docker run -d -p 10081:10081 -e CONSUL_IP=$CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery @@ -34,7 +34,7 @@ echo MSB_IP=${MSB_IP} # Start resmgr docker run -d --name vfc-resmanagement -e MSB_ADDR=${MSB_IP}:80 nexus3.onap.org:10001/onap/vfc/resmanagement RESMGR_IP=`get-instance-ip.sh vfc-resmanagement` -for i in {1..10}; do +for i in {1..20}; do curl -sS ${RESMGR_IP}:8480 && break echo sleep $i sleep $i diff --git a/test/csit/plans/vfc-nfvo-wfengine/sanity-check/setup.sh b/test/csit/plans/vfc-nfvo-wfengine/sanity-check/setup.sh new file mode 100644 index 000000000..d00a66c52 --- /dev/null +++ b/test/csit/plans/vfc-nfvo-wfengine/sanity-check/setup.sh @@ -0,0 +1,77 @@ +#!/bin/bash +# +# Copyright 2017 ZTE Corporation. +# +# 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. +# +# Place the scripts in run order: +# Start all process required for executing test case + +source ${SCRIPTS}/common_functions.sh + + +#start msb +docker run -d -p 8500:8500 --name msb_consul consul:0.9.3 +MSB_CONSUL_IP=`get-instance-ip.sh msb_consul` +echo MSB_CONSUL_IP=${MSB_CONSUL_IP} +docker run -d -p 10081:10081 -e CONSUL_IP=$MSB_CONSUL_IP --name msb_discovery nexus3.onap.org:10001/onap/msb/msb_discovery +MSB_DISCOVERY_IP=`get-instance-ip.sh msb_discovery` +echo MSB_DISCOVERY_IP=${MSB_DISCOVERY_IP} +docker run -d -p 80:80 -e CONSUL_IP=$MSB_CONSUL_IP -e SDCLIENT_IP=$MSB_DISCOVERY_IP -e "ROUTE_LABELS=visualRange:1" --name msb_internal_apigateway nexus3.onap.org:10001/onap/msb/msb_apigateway +MSB_IAG_IP=`get-instance-ip.sh msb_internal_apigateway` +echo MSB_IAG_IP=${MSB_IAG_IP} + +# Wait for initialization(8500 Consul, 10081 Service Registration & Discovery, 80 api gateway) +for i in {1..10}; do + curl -sS -m 1 ${MSB_CONSUL_IP}:8500 && curl -sS -m 1 ${MSB_DISCOVERY_IP}:10081 && curl -sS -m 1 ${MSB_IAG_IP}:80 && break + echo sleep $i + sleep $i +done + +# wait for container initalization +echo sleep 60 +sleep 60 + +ORG="onap" +PROJECT="vfc" +DOCKER_REPOSITORY="nexus3.onap.org:10001" +IMAGE="wfengine-activiti" +IMAGE_ACTIVITI_NAME="${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/${IMAGE}" + +# start wfengine-activiti +##docker run -d --name ${IMAGE} -e OPENPALETTE_MSB_IP=${MSB_IAG_IP} -e OPENPALETTE_MSB_PORT=80 ${IMAGE_ACTIVITI_NAME} +##WFENGINEACTIVITIR_IP=`get-instance-ip.sh ${IMAGE}` + +# Wait for initialization +##for i in {1..10}; do +## curl -sS ${WFENGINEACTIVITIR_IP}:8080 && break +## echo sleep $i +## sleep $i +##done + +##IMAGE="wfengine-mgrservice" +##IMAGE_MGRSERVICE_NAME="${DOCKER_REPOSITORY}/${ORG}/${PROJECT}/${IMAGE}" + +# Start wfengine-mgrservice +#docker run -d --name ${IMAGE} -e OPENPALETTE_MSB_IP=${MSB_IAG_IP} -e OPENPALETTE_MSB_PORT=80 ${IMAGE_MGRSERVICE_NAME} +##docker run -d --name ${IMAGE} -e OPENPALETTE_MSB_IP=${WFENGINEACTIVITIR_IP} -e OPENPALETTE_MSB_PORT=8080 ${IMAGE_MGRSERVICE_NAME} +##WFENGINEMGRSERVICE_IP=`get-instance-ip.sh ${IMAGE}` +##for i in {1..10}; do +## curl -sS ${WFENGINEMGRSERVICE_IP}:10550 && break +## echo sleep $i +## sleep $i +##done + +# Pass any variables required by Robot test suites in ROBOT_VARIABLES +#ROBOT_VARIABLES="-v MSB_IAG_IP:${MSB_IAG_IP} -v MSB_IP:${MSB_IAG_IP} -v MSB_PORT:80 -v MSB_DISCOVERY_IP:${MSB_DISCOVERY_IP} -v WFENGINEACTIVITIR_IP:${WFENGINEACTIVITIR_IP} -v WFENGINEACTIVITIR_PORT:8080 -v WFENGINEMGRSERVICE_IP:${WFENGINEMGRSERVICE_IP} -v WFENGINEMGRSERVICE_PORT:10550 -v SCRIPTS:${SCRIPTS}" +##ROBOT_VARIABLES="-v MSB_IAG_IP:${WFENGINEACTIVITIR_IP} -v MSB_IP:${WFENGINEMGRSERVICE_IP} -v MSB_PORT:10550 -v MSB_DISCOVERY_IP:${WFENGINEACTIVITIR_IP} -v MSB_DISCOVERY_PORT:8080 -v WFENGINEACTIVITIR_IP:${WFENGINEACTIVITIR_IP} -v WFENGINEACTIVITIR_PORT:8080 -v WFENGINEMGRSERVICE_IP:${WFENGINEMGRSERVICE_IP} -v WFENGINEMGRSERVICE_PORT:10550 -v SCRIPTS:${SCRIPTS}"
\ No newline at end of file diff --git a/test/csit/plans/vfc-nfvo-wfengine/sanity-check/teardown.sh b/test/csit/plans/vfc-nfvo-wfengine/sanity-check/teardown.sh new file mode 100644 index 000000000..caa506ecf --- /dev/null +++ b/test/csit/plans/vfc-nfvo-wfengine/sanity-check/teardown.sh @@ -0,0 +1,23 @@ +#!/bin/bash +# +# Copyright 2017 Huawei Technologies Co., Ltd. +# +# 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. +# + +# This script is sourced by run-csit.sh after Robot test completion. +kill-instance.sh msb_internal_apigateway +kill-instance.sh msb_discovery +kill-instance.sh msb_consul +##kill-instance.sh wfengine-mgrservice +##kill-instance.sh wfengine-activiti diff --git a/test/csit/plans/vfc-nfvo-wfengine/sanity-check/testplan.txt b/test/csit/plans/vfc-nfvo-wfengine/sanity-check/testplan.txt new file mode 100644 index 000000000..ff9f4d5d6 --- /dev/null +++ b/test/csit/plans/vfc-nfvo-wfengine/sanity-check/testplan.txt @@ -0,0 +1,4 @@ +# Test suites are relative paths under [integration.git]/test/csit/tests/. +# Place the suites in run order. + +vfc/nfvo-wfengine/workflow.robot
\ No newline at end of file diff --git a/test/csit/plans/vid/healthCheck/setup.sh b/test/csit/plans/vid/healthCheck/setup.sh index afe9ea7ba..a117a6c78 100644 --- a/test/csit/plans/vid/healthCheck/setup.sh +++ b/test/csit/plans/vid/healthCheck/setup.sh @@ -18,6 +18,8 @@ # # Place the scripts in run order: +/usr/bin/Xvfb :0 -screen 0 1024x768x24& +export DISPLAY=:0 source ${WORKSPACE}/test/csit/scripts/vid/clone_and_setup_vid_data.sh diff --git a/test/csit/plans/vid/healthCheck/testplan.txt b/test/csit/plans/vid/healthCheck/testplan.txt index ffbb593ca..92d8b0584 100644 --- a/test/csit/plans/vid/healthCheck/testplan.txt +++ b/test/csit/plans/vid/healthCheck/testplan.txt @@ -1,3 +1,4 @@ # Test suites are relative paths under [integration.git]/test/csit/tests/. # Place the suites in run order. vid/healthCheck +vid/login |