aboutsummaryrefslogtreecommitdiffstats
path: root/vagrant/tests
diff options
context:
space:
mode:
authorVictor Morales <victor.morales@intel.com>2018-09-11 08:50:28 -0700
committerVictor Morales <victor.morales@intel.com>2018-09-11 08:50:28 -0700
commitcb64a5fed1b10daa301235a2ef956b4805da99d3 (patch)
treedf087f339bd7c62d1bae209227393f1ac670872a /vagrant/tests
parente7a7b50f6fc0f036eeb116f95e8e5fb8d56aa4ef (diff)
Complete Plugin Functional Tests
It was fixed the issue to connect the plugin with the consul DB. This was a main roadblock to complete the functional Tests for the plugin. Change-Id: I3032e82a8f6baf4739c7433a5ffa97dac23daac8 Signed-off-by: Victor Morales <victor.morales@intel.com> Issue-ID: MULTICLOUD-301
Diffstat (limited to 'vagrant/tests')
-rwxr-xr-xvagrant/tests/plugin.sh84
1 files changed, 64 insertions, 20 deletions
diff --git a/vagrant/tests/plugin.sh b/vagrant/tests/plugin.sh
index 2c01c517..744b2207 100755
--- a/vagrant/tests/plugin.sh
+++ b/vagrant/tests/plugin.sh
@@ -12,12 +12,11 @@ set -o errexit
set -o nounset
set -o pipefail
-base_url="http://localhost:8081/v1/vnf_instances/"
-cloud_region_id="krd"
-namespace="default"
-csar_id="94e414f6-9ca4-11e8-bb6a-52540067263b"
-
-if [[ -z $(docker images -q generic_sim) ]]; then
+# _build_generic_sim() - Creates a generic simulator image in case that doesn't exist
+function _build_generic_sim {
+ if [[ -n $(docker images -q generic_sim) ]]; then
+ return
+ fi
BUILD_ARGS="--no-cache"
if [ $HTTP_PROXY ]; then
BUILD_ARGS+=" --build-arg HTTP_PROXY=${HTTP_PROXY}"
@@ -25,30 +24,37 @@ if [[ -z $(docker images -q generic_sim) ]]; then
if [ $HTTPS_PROXY ]; then
BUILD_ARGS+=" --build-arg HTTPS_PROXY=${HTTPS_PROXY}"
fi
+
pushd generic_simulator
+ echo "Building generic simulator image..."
docker build ${BUILD_ARGS} -t generic_sim:latest .
popd
-fi
-
-if [[ $(docker ps -q --all --filter "name=aai") ]]; then
- docker rm aai -f
-fi
-docker run --name aai -v $(mktemp):/tmp/generic_sim/ -v $(pwd)/generic_simulator/aai/:/etc/generic_sim/ -p 8443:8080 -d generic_sim
+}
-vnf_id_list=$(curl -s "${base_url}${cloud_region_id}/${namespace}" | jq -r '.vnf_id_list')
+# start_aai_service() - Starts a simulator for AAI service
+function start_aai_service {
+ _build_generic_sim
+ if [[ $(docker ps -q --all --filter "name=aai") ]]; then
+ docker rm aai -f
+ fi
+ echo "Start AAI simulator.."
+ docker run --name aai -v $(mktemp):/tmp/generic_sim/ -v $(pwd)/generic_simulator/aai/:/etc/generic_sim/ -p 8443:8080 -d generic_sim
+}
-mkdir -p ${CSAR_DIR}/${csar_id}
-cat << SEQ > ${CSAR_DIR}/${csar_id}/metadata.yaml
+# populate_csar_dir()- Creates content used for Functional tests
+function populate_csar_dir {
+ mkdir -p ${CSAR_DIR}/${csar_id}
+ cat << SEQ > ${CSAR_DIR}/${csar_id}/metadata.yaml
deployment:
- deployment.yaml
service:
- service.yaml
SEQ
-cat << DEPLOYMENT > ${CSAR_DIR}/${csar_id}/deployment.yaml
+ cat << DEPLOYMENT > ${CSAR_DIR}/${csar_id}/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
- name: multus-deployment
+ name: $deployment_name
labels:
app: multus
spec:
@@ -73,11 +79,11 @@ spec:
stdin: true
tty: true
DEPLOYMENT
-cat << SERVICE > ${CSAR_DIR}/${csar_id}/service.yaml
+ cat << SERVICE > ${CSAR_DIR}/${csar_id}/service.yaml
apiVersion: v1
kind: Service
metadata:
- name: sise-svc
+ name: $service_name
spec:
ports:
- port: 80
@@ -85,7 +91,20 @@ spec:
selector:
app: sise
SERVICE
+}
+
+# Configuration
+base_url="http://localhost:8081/v1/vnf_instances/"
+cloud_region_id="krd"
+namespace="default"
+csar_id="94e414f6-9ca4-11e8-bb6a-52540067263b"
+deployment_name="plugin_functional_test_deployment"
+service_name="plugin_functional_test_service"
+
+#start_aai_service
+populate_csar_dir
+#Functional Tests execution
payload_raw="
{
\"cloud_region_id\": \"$cloud_region_id\",
@@ -94,4 +113,29 @@ payload_raw="
}
"
payload=$(echo $payload_raw | tr '\n' ' ')
-curl -v -d "$payload" "${base_url}"
+echo "Creating VNF Instance"
+curl -d "$payload" "${base_url}"
+
+vnf_id=$(curl -s -X GET "${base_url}${cloud_region_id}/${namespace}" | jq -r '.vnf_id_list[0]')
+if [[ -z "$vnf_id" ]]; then
+ echo "VNF Instance not created"
+ exit 1
+fi
+echo "VNF Instance created succesfully with id: $vnf_id"
+#kubectl get deployment $deployment_name
+#kubectl get service $service_name
+
+vnf_details=$(curl -s -X GET "${base_url}${cloud_region_id}/${namespace}/${vnf_id}")
+if [[ -z "$vnf_details" ]]; then
+ echo "Cannot retrieved VNF Instance details"
+ exit 1
+fi
+echo "VNF details $vnf_details"
+
+echo "Deleting $vnf_id VNF Instance"
+curl -X DELETE "${base_url}${cloud_region_id}/${namespace}/${vnf_id}"
+if [[ -n $(curl -s -X GET "${base_url}${cloud_region_id}/${namespace}/${vnf_id}") ]]; then
+ echo "VNF Instance not deleted"
+ exit 1
+fi
+docker logs deployments_multicloud-k8s_1