diff options
author | Mandeep Khinda <mandeep.khinda@amdocs.com> | 2017-10-26 17:46:43 +0000 |
---|---|---|
committer | Alexis de Talhouƫt <alexis.de_talhouet@bell.ca> | 2017-11-23 20:48:56 +0000 |
commit | 4d71aab20ec59b6e1fc14cab7f1c8a159837f1f7 (patch) | |
tree | f8dba36ee9ecfe6130e6a10147d23337b373cdb6 /kubernetes/config | |
parent | f730de57d22ecd618a71b6efa7e1558ccc0771da (diff) |
bringing robot up to date with 1.1
-updates to various files that have changed in the VM version
-OpenO support (test success requires kube2msb and msb to be working)
-removed un-used -docker.sh scripts (I don't find them useful so I
am proposing to removing them here)
-updates to SDNC preload eliminates some old parameter subst.
we were doing.
-With these change and a temporary tweak to kube2msb that points it
to a rancher server (kubeMasterUrl) robot results are pretty much on
par with my VM deployment of ONAP:
==============================================================================
OpenECOMP ETE | FAIL |
31 critical tests, 25 passed, 6 failed
Issue-ID: OOM-382
Change-Id: I2e3bcfd6fce31b0e4de8b7d66be90c7490e04c5c
Signed-off-by: Mandeep Khinda <mandeep.khinda@amdocs.com>
Diffstat (limited to 'kubernetes/config')
15 files changed, 182 insertions, 371 deletions
diff --git a/kubernetes/config/docker/init/src/config/robot/demo-docker.sh b/kubernetes/config/docker/init/src/config/robot/demo-docker.sh deleted file mode 100755 index 2d9c6e4e9d..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/demo-docker.sh +++ /dev/null @@ -1,123 +0,0 @@ -#!/bin/bash - -# -# Execute tags built to support the hands on demo, -# -function usage -{ - echo "Usage: demo.sh <command> [<parameters>]" - echo " " - echo " demo.sh init" - echo " - Execute both init_customer + distribute" - echo " " - echo " demo.sh init_customer" - echo " - Create demo customer (Demonstration) and services, etc." - echo " " - echo " demo.sh distribute" - echo " - Distribute demo models (demoVFW and demoVLB)" - echo " " - echo " demo.sh preload <vnf_name> <module_name>" - echo " - Preload data for VNF for the <module_name>" - echo " " - echo " demo.sh appc <module_name>" - echo " - provide APPC with vFW module mount point for closed loop" - echo " " - echo " demo.sh init_robot" - echo " - Initialize robot after all ONAP VMs have started" - echo " " - echo " demo.sh instantiateVFW" - echo " - Instantiate vFW module for the a demo customer (DemoCust<uuid>)" - echo " " - echo " demo.sh deleteVNF <module_name from instantiateVFW>" - echo " - Delete the module created by instantiateVFW" -} - -# Set the defaults -if [ $# -eq 0 ];then - usage - exit -fi -## -## if more than 1 tag is supplied, the must be provided with -i or -e -## -while [ $# -gt 0 ] -do - key="$1" - - case $key in - init_robot) - TAG="UpdateWebPage" - read -s -p "WEB Site Password for user 'test': " WEB_PASSWORD - if [ "$WEB_PASSWORD" = "" ]; then - echo "" - echo "WEB Password is required for user 'test'" - exit - fi - VARIABLES="$VARIABLES -v WEB_PASSWORD:$WEB_PASSWORD" - shift - ;; - init) - TAG="InitDemo" - shift - ;; - init_customer) - TAG="InitCustomer" - shift - ;; - distribute) - TAG="InitDistribution" - shift - ;; - preload) - TAG="PreloadDemo" - shift - if [ $# -ne 2 ];then - echo "Usage: demo.sh preload <vnf_name> <module_name>" - exit - fi - VARIABLES="$VARIABLES -v VNF_NAME:$1" - shift - VARIABLES="$VARIABLES -v MODULE_NAME:$1" - shift - ;; - appc) - TAG="APPCMountPointDemo" - shift - if [ $# -ne 1 ];then - echo "Usage: demo.sh appc <module_name>" - exit - fi - VARIABLES="$VARIABLES -v MODULE_NAME:$1" - shift - ;; - instantiateVFW) - TAG="instantiateVFW" - VARIABLES="$VARIABLES -v GLOBAL_BUILD_NUMBER:$$" - shift - ;; - deleteVNF) - TAG="deleteVNF" - shift - if [ $# -ne 1 ];then - echo "Usage: demo.sh deleteVNF <module_name from instantiateVFW>" - exit - fi - VARFILE=$1.py - if [ -e /opt/eteshare/${VARFILE} ]; then - VARIABLES="$VARIABLES -V /share/${VARFILE}" - else - echo "Cache file ${VARFILE} is not found" - exit - fi - shift - ;; - *) - usage - exit - esac -done - -ETEHOME=/var/opt/OpenECOMP_ETE -VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py" -CONTAINER_ID=`docker ps |grep robot |grep onap-robot|grep -v gcr|awk '{print $1}'` -docker exec ${CONTAINER_ID} ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d ${ETEHOME}/html/logs/demo/${TAG} -i ${TAG} --display 89 2> ${TAG}.out diff --git a/kubernetes/config/docker/init/src/config/robot/demo-k8s.sh b/kubernetes/config/docker/init/src/config/robot/demo-k8s.sh deleted file mode 100755 index 8b56c8a39f..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/demo-k8s.sh +++ /dev/null @@ -1,123 +0,0 @@ -#!/bin/bash - -# -# Execute tags built to support the hands on demo, -# -function usage -{ - echo "Usage: demo.sh <command> [<parameters>]" - echo " " - echo " demo.sh init" - echo " - Execute both init_customer + distribute" - echo " " - echo " demo.sh init_customer" - echo " - Create demo customer (Demonstration) and services, etc." - echo " " - echo " demo.sh distribute" - echo " - Distribute demo models (demoVFW and demoVLB)" - echo " " - echo " demo.sh preload <vnf_name> <module_name>" - echo " - Preload data for VNF for the <module_name>" - echo " " - echo " demo.sh appc <module_name>" - echo " - provide APPC with vFW module mount point for closed loop" - echo " " - echo " demo.sh init_robot" - echo " - Initialize robot after all ONAP VMs have started" - echo " " - echo " demo.sh instantiateVFW" - echo " - Instantiate vFW module for the a demo customer (DemoCust<uuid>)" - echo " " - echo " demo.sh deleteVNF <module_name from instantiateVFW>" - echo " - Delete the module created by instantiateVFW" -} - -# Set the defaults -if [ $# -eq 0 ];then - usage - exit -fi -## -## if more than 1 tag is supplied, the must be provided with -i or -e -## -while [ $# -gt 0 ] -do - key="$1" - - case $key in - init_robot) - TAG="UpdateWebPage" - read -s -p "WEB Site Password for user 'test': " WEB_PASSWORD - if [ "$WEB_PASSWORD" = "" ]; then - echo "" - echo "WEB Password is required for user 'test'" - exit - fi - VARIABLES="$VARIABLES -v WEB_PASSWORD:$WEB_PASSWORD" - shift - ;; - init) - TAG="InitDemo" - shift - ;; - init_customer) - TAG="InitCustomer" - shift - ;; - distribute) - TAG="InitDistribution" - shift - ;; - preload) - TAG="PreloadDemo" - shift - if [ $# -ne 2 ];then - echo "Usage: demo.sh preload <vnf_name> <module_name>" - exit - fi - VARIABLES="$VARIABLES -v VNF_NAME:$1" - shift - VARIABLES="$VARIABLES -v MODULE_NAME:$1" - shift - ;; - appc) - TAG="APPCMountPointDemo" - shift - if [ $# -ne 1 ];then - echo "Usage: demo.sh appc <module_name>" - exit - fi - VARIABLES="$VARIABLES -v MODULE_NAME:$1" - shift - ;; - instantiateVFW) - TAG="instantiateVFW" - VARIABLES="$VARIABLES -v GLOBAL_BUILD_NUMBER:$$" - shift - ;; - deleteVNF) - TAG="deleteVNF" - shift - if [ $# -ne 1 ];then - echo "Usage: demo.sh deleteVNF <module_name from instantiateVFW>" - exit - fi - VARFILE=$1.py - if [ -e /opt/eteshare/${VARFILE} ]; then - VARIABLES="$VARIABLES -V /share/${VARFILE}" - else - echo "Cache file ${VARFILE} is not found" - exit - fi - shift - ;; - *) - usage - exit - esac -done - -ETEHOME=/var/opt/OpenECOMP_ETE -VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py" -POD=$(kubectl --namespace onap-robot get pods | sed 's/ .*//'| grep robot) -kubectl --namespace onap-robot exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d ${ETEHOME}/html/logs/demo/${TAG} -i ${TAG} --display 89 2> ${TAG}.out diff --git a/kubernetes/config/docker/init/src/config/robot/ete-docker.sh b/kubernetes/config/docker/init/src/config/robot/ete-docker.sh deleted file mode 100755 index 48b568dd9a..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/ete-docker.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash - -# -# Run the testsuite for the passed tag. Valid tags are ete, health, closedloop, instantiate -# Please clean up logs when you are done... -# Note: Do not run multiple concurrent ete.sh as the --display is not parameterized and tests will collide -# -if [ "$1" == "" ];then - echo "Usage: ete.sh [ health | ete | closedloop | instantiate ]" - exit -fi - -export TAGS="-i $1" -export ETEHOME=/var/opt/OpenECOMP_ETE -export OUTPUT_FOLDER=ETE_$$ - -VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py" -VARIABLES="-v GLOBAL_BUILD_NUMBER:$$" -CONTAINER_ID=`docker ps |grep robot |grep onap-robot|grep -v gcr|awk '{print $1}'` -docker exec ${CONTAINER_ID} ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d ${ETEHOME}/html/logs/ete/${OUTPUT_FOLDER} ${TAGS} --display 88 diff --git a/kubernetes/config/docker/init/src/config/robot/ete-k8s.sh b/kubernetes/config/docker/init/src/config/robot/ete-k8s.sh deleted file mode 100755 index 2c0fd6c383..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/ete-k8s.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/bash - -# -# Run the testsuite for the passed tag. Valid tags are ete, health, closedloop, instantiate -# Please clean up logs when you are done... -# Note: Do not run multiple concurrent ete.sh as the --display is not parameterized and tests will collide -# -if [ "$1" == "" ];then - echo "Usage: ete.sh [ health | ete | closedloop | instantiate ]" - exit -fi - -export TAGS="-i $1" -export ETEHOME=/var/opt/OpenECOMP_ETE -export OUTPUT_FOLDER=ETE_$$ - -VARIABLEFILES="-V /share/config/vm_properties.py -V /share/config/integration_robot_properties.py -V /share/config/integration_preload_parameters.py" -VARIABLES="-v GLOBAL_BUILD_NUMBER:$$" - -#docker exec openecompete_container ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d /share/logs/${OUTPUT_FOLDER} ${TAGS} --display 88 - -POD=$(kubectl --namespace onap-robot get pods | sed 's/ .*//'| grep robot) -kubectl --namespace onap-robot exec ${POD} -- ${ETEHOME}/runTags.sh ${VARIABLEFILES} ${VARIABLES} -d ${ETEHOME}/html/logs/ete/${OUTPUT_FOLDER} ${TAGS} --display 88 diff --git a/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_preload_parameters.py b/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_preload_parameters.py index 65c1711327..3826659fcd 100755 --- a/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_preload_parameters.py +++ b/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_preload_parameters.py @@ -6,15 +6,52 @@ GLOBAL_PRELOAD_PARAMETERS = { "repo_url_blob" : "https://nexus.onap.org/content/repositories/raw", "repo_url_artifacts" : "https://nexus.onap.org/content/groups/staging", "demo_artifacts_version" : "DEMO_ARTIFACTS_VERSION_HERE", - "ecomp_private_net_id" : "OPENSTACK_NETWORK_ID_WITH_ONAP_ROUTE_HERE", - "ecomp_private_subnet_id" : "OPENSTACK_SUBNET_ID_WITH_ONAP_ROUTE_HERE", - "ecomp_private_net_cidr" : "NETWORK_CIDR_WITH_ONAP_ROUTE_HERE", - - "dcae_collector_ip" : "192.168.176.225", - "dcae_collector_port" : "30241", - + "onap_private_net_id" : "OPENSTACK_NETWORK_ID_WITH_ONAP_ROUTE_HERE", + "onap_private_subnet_id" : "OPENSTACK_SUBNET_ID_WITH_ONAP_ROUTE_HERE", + "onap_private_net_cidr" : "NETWORK_CIDR_WITH_ONAP_ROUTE_HERE", + "dcae_collector_ip" : "10.0.4.102", + "dcae_collector_port" : "8080", + "public_net_id" : "OPENSTACK_PUBLIC_NET_ID_HERE", + "cloud_env" : "${cloud_env}", + "install_script_version" : "${install_script_version}", +### +# vims_preload same for every instantiation +### + "bono_image_name" : "${vm_image_name}", + "sprout_image_name" : "${vm_image_name}", + "homer_image_name" : "${vm_image_name}", + "homestead_image_name" : "${vm_image_name}", + "ralf_image_name" : "${vm_image_name}", + "ellis_image_name" : "${vm_image_name}", + "dns_image_name" : "${vm_image_name}", + "bono_flavor_name" : "${vm_flavor_name}", + "sprout_flavor_name" : "${vm_flavor_name}", + "homer_flavor_name" : "${vm_flavor_name}", + "homestead_flavor_name" : "${vm_flavor_name}", + "ralf_flavor_name" : "${vm_flavor_name}", + "ellis_flavor_name" : "${vm_flavor_name}", + "dns_flavor_name" : "${vm_flavor_name}", + "repo_url" : "http://repo.cw-ngv.com/stable", + "zone" : "me.cw-ngv.com", + "dn_range_start" : "2425550000", + "dn_range_length" : "10000", + "dnssec_key" : "9FPdYTWhk5+LbhrqtTPQKw==", +### +# vlb_preload same for every instantiation +### + "vlb_image_name" : "${vm_image_name}", + "vlb_flavor_name" : "${vm_flavor_name}", +### +# vlb_preload same for every instantiation +### + "vfw_image_name" : "${vm_image_name}", + "vfw_flavor_name" : "${vm_flavor_name}", +### }, + +### # heat template parameter values for heat template instances created during Vnf-Orchestration test cases +### "Vnf-Orchestration" : { "vfw_preload.template": { "unprotected_private_net_id" : "vofwl01_unprotected${hostid}", @@ -23,32 +60,36 @@ GLOBAL_PRELOAD_PARAMETERS = { "protected_private_net_cidr" : "192.168.20.0/24", "vfw_private_ip_0" : "192.168.10.100", "vfw_private_ip_1" : "192.168.20.100", - "vfw_private_ip_2" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.3", + "vfw_private_ip_2" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.1", "vpg_private_ip_0" : "192.168.10.200", - "vpg_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.4", + "vpg_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.2", "vsn_private_ip_0" : "192.168.20.250", - "vsn_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.5", + "vsn_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.3", 'vfw_name_0':'vofwl01fwl${hostid}', 'vpg_name_0':'vofwl01pgn${hostid}', - 'vsn_name_0':'vofwl01snk${hostid}', + 'vsn_name_0':'vofwl01snk${hostid}' }, "vlb_preload.template" : { "vlb_private_net_id" : "volb01_private${hostid}", "vlb_private_net_cidr" : "192.168.30.0/24", "vlb_private_ip_0" : "192.168.30.100", - "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.6", + "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.4", "vdns_private_ip_0" : "192.168.30.110", - "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.7", + "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.5", 'vlb_name_0':'vovlblb${hostid}', 'vdns_name_0':'vovlbdns${hostid}', + "vlb_private_net_cidr" : "192.168.10.0/24", + "pktgen_private_net_cidr" : "192.168.9.0/24" + }, "dnsscaling_preload.template" : { "vlb_private_net_id" : "volb01_private${hostid}", "vlb_private_ip_0" : "192.168.30.100", - "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.8", + "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.4", "vdns_private_ip_0" : "192.168.30.222", - "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.9", + "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.6", 'scaling_vdns_name_0':'vovlbscaling${hostid}', + "vlb_private_net_cidr" : "192.168.10.0/24" }, "vvg_preload.template" : { } @@ -62,32 +103,35 @@ GLOBAL_PRELOAD_PARAMETERS = { "protected_private_net_cidr" : "192.168.120.0/24", "vfw_private_ip_0" : "192.168.110.100", "vfw_private_ip_1" : "192.168.120.100", - "vfw_private_ip_2" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.10", + "vfw_private_ip_2" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.11", "vpg_private_ip_0" : "192.168.110.200", - "vpg_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.11", + "vpg_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.12", "vsn_private_ip_0" : "192.168.120.250", - "vsn_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.12", + "vsn_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.13", 'vfw_name_0':'clfwl01fwl${hostid}', 'vpg_name_0':'clfwl01pgn${hostid}', - 'vsn_name_0':'clfwl01snk${hostid}', + 'vsn_name_0':'clfwl01snk${hostid}' }, "vlb_preload.template" : { "vlb_private_net_id" : "cllb01_private${hostid}", "vlb_private_net_cidr" : "192.168.130.0/24", "vlb_private_ip_0" : "192.168.130.100", - "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.13", + "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.14", "vdns_private_ip_0" : "192.168.130.110", - "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.14", + "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.15", 'vlb_name_0':'clvlblb${hostid}', 'vdns_name_0':'clvlbdns${hostid}', + "vlb_private_net_cidr" : "192.168.10.0/24", + "pktgen_private_net_cidr" : "192.168.9.0/24" }, "dnsscaling_preload.template" : { "vlb_private_net_id" : "cllb01_private${hostid}", "vlb_private_ip_0" : "192.168.130.100", - "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.15", + "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.14", "vdns_private_ip_0" : "192.168.130.222", "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.16", 'scaling_vdns_name_0':'clvlbscaling${hostid}', + "vlb_private_net_cidr" : "192.168.10.0/24" }, "vvg_preload.template" : { } @@ -101,32 +145,35 @@ GLOBAL_PRELOAD_PARAMETERS = { "protected_private_net_cidr" : "192.168.120.0/24", "vfw_private_ip_0" : "192.168.110.100", "vfw_private_ip_1" : "192.168.120.100", - "vfw_private_ip_2" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.17", + "vfw_private_ip_2" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.11", "vpg_private_ip_0" : "192.168.110.200", - "vpg_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.18", + "vpg_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.12", "vsn_private_ip_0" : "192.168.120.250", - "vsn_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.19", + "vsn_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.13", 'vfw_name_0':'demofwl01fwl', 'vpg_name_0':'demofwl01pgn', - 'vsn_name_0':'demofwl01snk', + 'vsn_name_0':'demofwl01snk' }, "vlb_preload.template" : { "vlb_private_net_id" : "demolb_private", "vlb_private_net_cidr" : "192.168.130.0/24", "vlb_private_ip_0" : "192.168.130.100", - "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.20", + "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.14", "vdns_private_ip_0" : "192.168.130.110", - "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.21", + "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.15", 'vlb_name_0':'demovlblb', 'vdns_name_0':'demovlbdns', + "vlb_private_net_cidr" : "192.168.10.0/24", + "pktgen_private_net_cidr" : "192.168.9.0/24" }, "dnsscaling_preload.template" : { "vlb_private_net_id" : "demolb_private", "vlb_private_ip_0" : "192.168.130.100", - "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.22", + "vlb_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.14", "vdns_private_ip_0" : "192.168.130.222", - "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.23", + "vdns_private_ip_1" : "OPENSTACK_OAM_NETWORK_CIDR_PREFIX_HERE.16", 'scaling_vdns_name_0':'demovlbscaling', + "vlb_private_net_cidr" : "192.168.10.0/24" }, "vvg_preload.template" : { } diff --git a/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_robot_properties.py b/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_robot_properties.py index f1d0e98cc9..0bf67912d2 100755 --- a/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_robot_properties.py +++ b/kubernetes/config/docker/init/src/config/robot/eteshare/config/integration_robot_properties.py @@ -19,11 +19,17 @@ GLOBAL_ASDC_FE_PORT = "8181" GLOBAL_ASDC_BE_PORT = "8080" GLOBAL_ASDC_BE_USERNAME = "beep" GLOBAL_ASDC_BE_PASSWORD = "boop" +# clamp info - everything is from the private oam network (also called ecomp private network) +GLOBAL_CLAMP_SERVER_PROTOCOL = "http" +GLOBAL_CLAMP_SERVER_PORT = "8080" # dcae info - everything is from the private oam network (also called ecomp private network) GLOBAL_DCAE_SERVER_PROTOCOL = "http" -GLOBAL_DCAE_SERVER_PORT = "9998" +GLOBAL_DCAE_SERVER_PORT = "8080" GLOBAL_DCAE_USERNAME = "console" GLOBAL_DCAE_PASSWORD = "ZjJkYjllMjljMTI2M2Iz" +# microservice bus info - everything is from the private oam network (also called ecomp private network) +GLOBAL_MSB_SERVER_PROTOCOL = "http" +GLOBAL_MSB_SERVER_PORT = "80" # message router info - everything is from the private oam network (also called ecomp private network) GLOBAL_MR_SERVER_PROTOCOL = "http" GLOBAL_MR_SERVER_PORT = "3904" @@ -33,7 +39,6 @@ GLOBAL_MSO_SERVER_PORT = "8080" GLOBAL_MSO_USERNAME = "InfraPortalClient" GLOBAL_MSO_PASSWORD = "password1$" # openstack info - info to select right info in environment -GLOBAL_OPENSTACK_TENANT_NAME = "OPENSTACK_TENANT_NAME_HERE" # packet generate vnf info - everything is from the private oam network (also called ecomp private network) GLOBAL_PACKET_GENERATOR_PORT = "8183" GLOBAL_PACKET_GENERATOR_USERNAME = "admin" @@ -73,3 +78,4 @@ GLOBAL_VVGSERVER_IMAGE = "UBUNTU_14_IMAGE_NAME_HERE" GLOBAL_VVGSERVER_FLAVOR = "OPENSTACK_FLAVOUR_MEDIUM_HERE" # dns info GLOBAL_DNS_TRAFFIC_DURATION = "600" +GLOBAL_HEAT_TEMPLATES_FOLDER = "/share/heat" diff --git a/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_config2robot.sh b/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_config2robot.sh index 962eea86ec..c50fa5f491 100755 --- a/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_config2robot.sh +++ b/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_config2robot.sh @@ -6,14 +6,19 @@ CONFIG=/opt/config PROPERTIES=/opt/eteshare/config/vm_properties.py GLOBAL_VM_PROPERTIES="# File generated from /opt/config\n#\n" +HASH="GLOBAL_INJECTED_PROPERTIES={" +COMMA="" for f in `ls $CONFIG/*.txt`; do VALUE=`cat $f` NAME=${f%.*} NAME=${NAME##*/} - GLOBAL_VM_PROPERTIES=$"$GLOBAL_VM_PROPERTIES \"$NAME\" : \"$VALUE\",\n" + NAME=${NAME^^} + GLOBAL_VM_PROPERTIES=$"${GLOBAL_VM_PROPERTIES}GLOBAL_INJECTED_$NAME = \"$VALUE\"\n" + HASH=$"${HASH}${COMMA}\n\"GLOBAL_INJECTED_$NAME\" : \"$VALUE\"" + COMMA="," done -GLOBAL_VM_PROPERTIES=${GLOBAL_VM_PROPERTIES/%,\\n/\}} +HASH="${HASH}}\n" +GLOBAL_VM_PROPERTIES="${GLOBAL_VM_PROPERTIES}\n${HASH}" +GLOBAL_VM_PROPERTIES=${GLOBAL_VM_PROPERTIES} echo -e $GLOBAL_VM_PROPERTIES > $PROPERTIES -REGION=`cat $CONFIG/region.txt` -echo -e "\nGLOBAL_OPENSTACK_SERVICE_REGION = \"$REGION\"" >> /opt/eteshare/config/integration_robot_properties.py diff --git a/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_properties.py b/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_properties.py index 5601bdd560..f50aac973e 100755 --- a/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_properties.py +++ b/kubernetes/config/docker/init/src/config/robot/eteshare/config/vm_properties.py @@ -1,22 +1,25 @@ # File generated from /opt/config # GLOBAL_INJECTED_AAI1_IP_ADDR = "aai-service.onap-aai" -#GLOBAL_INJECTED_AAI2_IP_ADDR = "10.0.1.2" +#GLOBAL_INJECTED_AAI2_IP_ADDR = "N/A" GLOBAL_INJECTED_APPC_IP_ADDR = "sdnhost.onap-appc" GLOBAL_INJECTED_ARTIFACTS_VERSION = "1.1.0-SNAPSHOT" +GLOBAL_INJECTED_CLAMP_IP_ADDR = "clamp.onap-clamp" GLOBAL_INJECTED_CLOUD_ENV = "openstack" GLOBAL_INJECTED_DCAE_IP_ADDR = "dcae-controller.onap-dcae" GLOBAL_INJECTED_DNS_IP_ADDR = "10.0.100.1" GLOBAL_INJECTED_DOCKER_VERSION = "1.1-STAGING-latest" +#GLOBAL_INJECTED_EXTERNAL_DNS = "N/A" GLOBAL_INJECTED_GERRIT_BRANCH = "master" GLOBAL_INJECTED_KEYSTONE = "OPENSTACK_KEYSTONE_IP_HERE" GLOBAL_INJECTED_MR_IP_ADDR = "dmaap.onap-message-router" -GLOBAL_INJECTED_SO_IP_ADDR = "mso.onap-mso" +GLOBAL_INJECTED_MSO_IP_ADDR = "mso.onap-mso" GLOBAL_INJECTED_NETWORK = "OPENSTACK_NETWORK_ID_WITH_ONAP_ROUTE_HERE" GLOBAL_INJECTED_NEXUS_DOCKER_REPO = "nexus3.onap.org:10001" GLOBAL_INJECTED_NEXUS_PASSWORD = "docker" GLOBAL_INJECTED_NEXUS_REPO = "https://nexus.onap.org/content/sites/raw" GLOBAL_INJECTED_NEXUS_USERNAME = "docker" +GLOBAL_INJECTED_OPENO_IP_ADDR = "msb-iag.onap-msb" GLOBAL_INJECTED_OPENSTACK_PASSWORD = "OPENSTACK_PASSWORD_HERE" GLOBAL_INJECTED_OPENSTACK_TENANT_ID = "OPENSTACK_TENANT_ID_HERE" GLOBAL_INJECTED_OPENSTACK_USERNAME = "OPENSTACK_USERNAME_HERE" @@ -24,9 +27,51 @@ GLOBAL_INJECTED_POLICY_IP_ADDR = "pypdp.onap-policy" GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR = "drools.onap-policy" GLOBAL_INJECTED_PORTAL_IP_ADDR = "portalapps.onap-portal" GLOBAL_INJECTED_REGION = "OPENSTACK_REGION_HERE" +GLOBAL_INJECTED_REMOTE_REPO = "http://gerrit.onap.org/r/testsuite/properties.git" GLOBAL_INJECTED_SDC_FE_IP_ADDR = "sdc-fe.onap-sdc" GLOBAL_INJECTED_SDC_BE_IP_ADDR = "sdc-be.onap-sdc" GLOBAL_INJECTED_SDNC_IP_ADDR = "sdnhost.onap-sdnc" GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR = "sdnc-portal.onap-sdnc" +GLOBAL_INJECTED_SO_IP_ADDR = "mso.onap-mso" GLOBAL_INJECTED_VID_IP_ADDR = "vid-server.onap-vid" +GLOBAL_INJECTED_VM_FLAVOR = "OPENSTACK_FLAVOUR_MEDIUM_HERE" +GLOBAL_INJECTED_VM_IMAGE_NAME = "UBUNTU_14_IMAGE_NAME_HERE" +GLOBAL_INJECTED_PUBLIC_NET_ID = "OPENSTACK_PUBLIC_NET_ID_HERE" +GLOBAL_INJECTED_PROPERTIES = { + "GLOBAL_INJECTED_AAI1_IP_ADDR" : "aai-service.onap-aai", + "GLOBAL_INJECTED_APPC_IP_ADDR" : "sdnhost.onap-appc", + "GLOBAL_INJECTED_ARTIFACTS_VERSION" : "1.1.0-SNAPSHOT", + "GLOBAL_INJECTED_CLAMP_IP_ADDR" : "clamp.onap-clamp", + "GLOBAL_INJECTED_CLOUD_ENV" : "openstack", + "GLOBAL_INJECTED_DCAE_IP_ADDR" : "dcae-controller.onap-dcae", + "GLOBAL_INJECTED_DNS_IP_ADDR" : "10.0.100.1", + "GLOBAL_INJECTED_DOCKER_VERSION" : "1.1-STAGING-latest", + "GLOBAL_INJECTED_GERRIT_BRANCH" : "master", + "GLOBAL_INJECTED_KEYSTONE" : "OPENSTACK_KEYSTONE_IP_HERE", + "GLOBAL_INJECTED_MR_IP_ADDR" : "dmaap.onap-message-router", + "GLOBAL_INJECTED_MSO_IP_ADDR" : "mso.onap-mso", + "GLOBAL_INJECTED_NETWORK" : "OPENSTACK_NETWORK_ID_WITH_ONAP_ROUTE_HERE", + "GLOBAL_INJECTED_NEXUS_DOCKER_REPO" : "nexus3.onap.org:10001", + "GLOBAL_INJECTED_NEXUS_PASSWORD" : "docker", + "GLOBAL_INJECTED_NEXUS_REPO" : "https://nexus.onap.org/content/sites/raw", + "GLOBAL_INJECTED_NEXUS_USERNAME" : "docker", + "GLOBAL_INJECTED_OPENO_IP_ADDR" : "msb-iag.onap-msb", + "GLOBAL_INJECTED_OPENSTACK_PASSWORD" : "OPENSTACK_PASSWORD_HERE", + "GLOBAL_INJECTED_OPENSTACK_TENANT_ID" : "OPENSTACK_TENANT_ID_HERE", + "GLOBAL_INJECTED_OPENSTACK_USERNAME" : "OPENSTACK_USERNAME_HERE", + "GLOBAL_INJECTED_POLICY_IP_ADDR" : "pypdp.onap-policy", + "GLOBAL_INJECTED_POLICY_HEALTHCHECK_IP_ADDR" : "drools.onap-policy", + "GLOBAL_INJECTED_PORTAL_IP_ADDR" : "portalapps.onap-portal", + "GLOBAL_INJECTED_REGION" : "OPENSTACK_REGION_HERE", + "GLOBAL_INJECTED_REMOTE_REPO" : "http://gerrit.onap.org/r/testsuite/properties.git", + "GLOBAL_INJECTED_SDC_FE_IP_ADDR" : "sdc-fe.onap-sdc", + "GLOBAL_INJECTED_SDC_BE_IP_ADDR" : "sdc-be.onap-sdc", + "GLOBAL_INJECTED_SDNC_IP_ADDR" : "sdnhost.onap-sdnc", + "GLOBAL_INJECTED_SDNC_PORTAL_IP_ADDR" : "sdnc-portal.onap-sdnc", + "GLOBAL_INJECTED_SO_IP_ADDR" : "mso.onap-mso", + "GLOBAL_INJECTED_VID_IP_ADDR" : "vid-server.onap-vid", + "GLOBAL_INJECTED_VM_FLAVOR" : "OPENSTACK_FLAVOUR_MEDIUM_HERE", + "GLOBAL_INJECTED_VM_IMAGE_NAME" : "UBUNTU_14_IMAGE_NAME_HERE", + "GLOBAL_INJECTED_PUBLIC_NET_ID" : "OPENSTACK_PUBLIC_NET_ID_HERE" +} diff --git a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_clearwater/base_clearwater.env b/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_clearwater/base_clearwater.env deleted file mode 100644 index 5c2330efcd..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_clearwater/base_clearwater.env +++ /dev/null @@ -1,21 +0,0 @@ -parameters: - public_net_id: OPENSTACK_PUBLIC_NET_ID_HERE - bono_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - sprout_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - homer_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - homestead_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - ralf_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - ellis_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - dns_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - bono_image_name: UBUNTU_14_IMAGE_NAME_HERE - sprout_image_name: UBUNTU_14_IMAGE_NAME_HERE - homer_image_name: UBUNTU_14_IMAGE_NAME_HERE - homestead_image_name: UBUNTU_14_IMAGE_NAME_HERE - ralf_image_name: UBUNTU_14_IMAGE_NAME_HERE - ellis_image_name: UBUNTU_14_IMAGE_NAME_HERE - dns_image_name: UBUNTU_14_IMAGE_NAME_HERE - repo_url: http://repo.cw-ngv.com/stable - zone: me.cw-ngv.com - dn_range_start: "2425550000" - dn_range_length: "10000" - dnssec_key: 9FPdYTWhk5+LbhrqtTPQKw==
\ No newline at end of file diff --git a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vfw/base_vfw.env b/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vfw/base_vfw.env deleted file mode 100644 index 1d09525ef0..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vfw/base_vfw.env +++ /dev/null @@ -1,4 +0,0 @@ -parameters: - vfw_image_name: UBUNTU_14_IMAGE_NAME_HERE - vfw_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - public_net_id: OPENSTACK_PUBLIC_NET_ID_HERE
\ No newline at end of file diff --git a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vlb/base_vlb.env b/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vlb/base_vlb.env deleted file mode 100644 index e889ecc860..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vlb/base_vlb.env +++ /dev/null @@ -1,4 +0,0 @@ -parameters: - vlb_image_name: UBUNTU_14_IMAGE_NAME_HERE - vlb_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - public_net_id: OPENSTACK_PUBLIC_NET_ID_HERE
\ No newline at end of file diff --git a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vlb/dnsscaling.env b/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vlb/dnsscaling.env deleted file mode 100644 index e889ecc860..0000000000 --- a/kubernetes/config/docker/init/src/config/robot/robot/assets/asdc/base_vlb/dnsscaling.env +++ /dev/null @@ -1,4 +0,0 @@ -parameters: - vlb_image_name: UBUNTU_14_IMAGE_NAME_HERE - vlb_flavor_name: OPENSTACK_FLAVOUR_MEDIUM_HERE - public_net_id: OPENSTACK_PUBLIC_NET_ID_HERE
\ No newline at end of file diff --git a/kubernetes/config/docker/init/src/config/robot/robot/resources/asdc_interface.robot b/kubernetes/config/docker/init/src/config/robot/robot/resources/asdc_interface.robot index 72407defe5..3020603ef8 100644 --- a/kubernetes/config/docker/init/src/config/robot/robot/resources/asdc_interface.robot +++ b/kubernetes/config/docker/init/src/config/robot/robot/resources/asdc_interface.robot @@ -68,8 +68,9 @@ Distribute Model From ASDC Distribute ASDC Catalog Service ${catalog_service_id} ${catalog_service_resp}= Get ASDC Catalog Service ${catalog_service_id} ${vf_module}= Find Element In Array ${loop_catalog_resource_resp['groups']} type org.openecomp.groups.VfModule - [Return] ${catalog_service_resp['name']} ${loop_catalog_resource_resp['name']} ${vf_module} ${catalog_resource_ids} ${catalog_service_id} Check Catalog Service Distributed ${catalog_service_resp['uuid']} + [Return] ${catalog_service_resp['name']} ${loop_catalog_resource_resp['name']} ${vf_module} ${catalog_resource_ids} ${catalog_service_id} + Setup ASDC Catalog Resource [Documentation] Creates all the steps a vf needs for an asdc catalog resource and returns the id [Arguments] ${model_zip_path} @@ -289,13 +290,15 @@ Certify ASDC Catalog Resource ${resp}= Run ASDC Post Request ${ASDC_CATALOG_RESOURCES_PATH}/${catalog_resource_id}${ASDC_CATALOG_LIFECYCLE_PATH}/certify ${data} ${ASDC_TESTER_USER_ID} Should Be Equal As Strings ${resp.status_code} 200 [Return] ${resp.json()['uniqueId']} + Upload ASDC Heat Package [Documentation] Creates an asdc Software Product and returns its id [Arguments] ${software_product_id} ${file_path} ${version_id}=0.1 - ${file}= Get Binary File ${file_path} - ${files}= Create Dictionary upload=${file} + ${files}= Create Dictionary + Create Multi Part ${files} upload ${file_path} contentType=application/zip ${resp}= Run ASDC Post Files Request ${ASDC_VENDOR_SOFTWARE_PRODUCT_PATH}/${software_product_id}/versions/${version_id}${ASDC_VENDOR_SOFTWARE_UPLOAD_PATH} ${files} ${ASDC_DESIGNER_USER_ID} Should Be Equal As Strings ${resp.status_code} 200 + Add ASDC Catalog Service [Documentation] Creates an asdc Catalog Service and returns its id [Arguments] ${catalog_service_name} @@ -431,6 +434,7 @@ Run ASDC Put Request ${resp}= Put Request asdc ${data_path} data=${data} headers=${headers} Log Received response from asdc ${resp.text} [Return] ${resp} + Run ASDC Post Files Request [Documentation] Runs an ASDC post request [Arguments] ${data_path} ${files} ${user}=${ASDC_DESIGNER_USER_ID} @@ -442,6 +446,7 @@ Run ASDC Post Files Request ${resp}= Post Request asdc ${data_path} files=${files} headers=${headers} Log Received response from asdc ${resp.text} [Return] ${resp} + Run ASDC Post Request [Documentation] Runs an ASDC post request [Arguments] ${data_path} ${data} ${user}=${ASDC_DESIGNER_USER_ID} @@ -471,9 +476,17 @@ Open ASDC GUI ##Setup Browser Go To ${ASDC_FE_ENDPOINT}${PATH} Maximize Browser Window - Set Selenium Speed ${GLOBAL_SELENIUM_DELAY} + Set Browser Implicit Wait ${GLOBAL_SELENIUM_BROWSER_IMPLICIT_WAIT} Log Logging in to ${ASDC_FE_ENDPOINT}${PATH} Title Should Be ASDC Wait Until Page Contains Element xpath=//div/a[text()='SDC'] ${GLOBAL_SELENIUM_BROWSER_WAIT_TIMEOUT} Log Logged in to ${ASDC_FE_ENDPOINT}${PATH} + + +Create Multi Part + [Arguments] ${addTo} ${partName} ${filePath} ${contentType}=${None} + ${fileData}= Get Binary File ${filePath} + ${fileDir} ${fileName}= Split Path ${filePath} + ${partData}= Create List ${fileName} ${fileData} ${contentType} + Set To Dictionary ${addTo} ${partName}=${partData} diff --git a/kubernetes/config/docker/init/src/config/robot/robot/resources/policy_interface.robot b/kubernetes/config/docker/init/src/config/robot/robot/resources/policy_interface.robot index 4798c91d60..6887ce6b56 100644 --- a/kubernetes/config/docker/init/src/config/robot/robot/resources/policy_interface.robot +++ b/kubernetes/config/docker/init/src/config/robot/robot/resources/policy_interface.robot @@ -57,4 +57,4 @@ Run Policy Get Configs Request ${headers}= Create Dictionary Accept=application/json Content-Type=application/json Authorization=Basic ${GLOBAL_POLICY_AUTH} ClientAuth=${GLOBAL_POLICY_CLIENTAUTH} ${resp}= Post Request policy ${data_path} data=${data} headers=${headers} Log Received response from policy ${resp.text} - [Return] ${resp} + [Return] ${resp}
\ No newline at end of file diff --git a/kubernetes/config/docker/init/src/config/robot/robot/resources/sdngc_interface.robot b/kubernetes/config/docker/init/src/config/robot/robot/resources/sdngc_interface.robot index a2693b8fba..07a8445221 100644 --- a/kubernetes/config/docker/init/src/config/robot/robot/resources/sdngc_interface.robot +++ b/kubernetes/config/docker/init/src/config/robot/robot/resources/sdngc_interface.robot @@ -111,13 +111,12 @@ Get From Mapping ${vf_module_name}= Get From DIctionary ${vf_module} name :for ${template} in @{templates} \ Return From Keyword If '${template['name_pattern']}' in '${vf_module_name}' ${template} - [Return] None - - + [Return] None + Preload One Vnf Topology [Arguments] ${service_type_uuid} ${generic_vnf_name} ${generic_vnf_type} ${vf_module_name} ${vf_module_type} ${service} ${filename} ${uuid} Return From Keyword If '${filename}' == '' - ${data_template}= OperatingSystem.Get File ${PRELOAD_VNF_TOPOLOGY_OPERATION_BODY}/${filename} + ${data_template}= OperatingSystem.Get File ${PRELOAD_VNF_TOPOLOGY_OPERATION_BODY}/preload.template ${parameters}= Get Template Parameters ${filename} ${uuid} Set To Dictionary ${parameters} generic_vnf_name=${generic_vnf_name} generic_vnf_type=${generic_vnf_type} service_type=${service_type_uuid} vf_module_name=${vf_module_name} vf_module_type=${vf_module_type} uuid=${uuid} ${data}= Fill JSON Template ${data_template} ${parameters} @@ -136,6 +135,11 @@ Get Template Parameters ${valuemap}= Create Dictionary Set To Dictionary ${valuemap} artifacts_version=${GLOBAL_INJECTED_ARTIFACTS_VERSION} Set To Dictionary ${valuemap} network=${GLOBAL_INJECTED_NETWORK} + Set To Dictionary ${valuemap} public_net_id=${GLOBAL_INJECTED_PUBLIC_NET_ID} + Set To Dictionary ${valuemap} cloud_env=${GLOBAL_INJECTED_CLOUD_ENV} + Set To Dictionary ${valuemap} install_script_version=${GLOBAL_INJECTED_INSTALL_SCRIPT_VERSION} + Set To Dictionary ${valuemap} vm_image_name=${GLOBAL_INJECTED_VM_IMAGE_NAME} + Set To Dictionary ${valuemap} vm_flavor_name=${GLOBAL_INJECTED_VM_FLAVOR_NAME} # update the value map with unique values. Set To Dictionary ${valuemap} uuid=${uuid} hostid=${hostid} ecompnet=${ecompnet} ${parameters}= Create Dictionary @@ -143,7 +147,9 @@ Get Template Parameters Resolve Values Into Dictionary ${valuemap} ${defaults} ${parameters} ${suite_templates}= Get From Dictionary ${GLOBAL_PRELOAD_PARAMETERS} ${suite} ${template}= Get From Dictionary ${suite_templates} ${template} - Resolve Values Into Dictionary ${valuemap} ${template} ${parameters} + ${vnf_parameters}= Resolve VNF Parameters Into Array ${valuemap} ${template} ${parameters} + ${vnf_parameters_json}= Evaluate json.dumps(${vnf_parameters}) json + Set To Dictionary ${parameters} vnf_parameters=${vnf_parameters_json} [Return] ${parameters} Resolve Values Into Dictionary @@ -153,6 +159,17 @@ Resolve Values Into Dictionary \ ${value}= Get From Dictionary ${from} ${key} \ ${value}= Template String ${value} ${valuemap} \ Set To Dictionary ${to} ${key} ${value} + +Resolve VNF Parameters Into Array + [Arguments] ${valuemap} ${from} ${to} + ${vnf_parameters}= Create List + ${keys}= Get Dictionary Keys ${from} + :for ${key} in @{keys} + \ ${value}= Get From Dictionary ${from} ${key} + \ ${value}= Template String ${value} ${valuemap} + \ ${parameter}= Create Dictionary vnf-parameter-name=${key} vnf-parameter-value=${value} + \ Append To List ${vnf_parameters} ${parameter} + [Return] ${vnf_parameters} Preload Vnf Profile [Arguments] ${vnf_name} @@ -202,4 +219,4 @@ Login To SDNGC Admin GUI Input Password xpath=//input[@id='password'] ${shortened_uuid} Click Button xpath=//button[@type='submit'] Title Should Be SDN-C AdminPortal - Log Logged in to ${SDNGC_ADMIN_LOGIN_URL} + Log Logged in to ${SDNGC_ADMIN_LOGIN_URL}
\ No newline at end of file |