Merge "Modify DFC HTTP mock to consume PNF-Simulator HTTP server - CSIT"
authorKrzysztof Kuzmicki <krzysztof.kuzmicki@nokia.com>
Mon, 8 Mar 2021 11:22:24 +0000 (11:22 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 8 Mar 2021 11:22:24 +0000 (11:22 +0000)
27 files changed:
plans/sdnc/sdnc_netconf_tls_post_deploy/setup.sh
plans/so/integration-etsi-testing/config/env
plans/so/integration-etsi-testing/config/override-files/bpmn-infra/onapheat/override.yaml
plans/so/integration-etsi-testing/config/override-files/so-etsi-nfvo-ns-lcm/onapheat/override.yaml
plans/so/integration-etsi-testing/config/override-files/so-vnfm-adapter/onapheat/override.yaml
plans/so/integration-etsi-testing/config/override-files/vnfm-simulator/onapheat/override.yaml
plans/so/integration-etsi-testing/docker-compose.local.yml
plans/so/integration-etsi-testing/docker-compose.yml
plans/so/integration-etsi-testing/so-simulators/vnfm-simulator/vnfm-service/src/main/java/org/onap/so/svnfm/simulator/services/SubscriptionManager.java
plans/so/integration-etsi-testing/so-simulators/vnfm-simulator/vnfm-service/src/main/resources/application.yaml
plans/so/integration-etsi-testing/so-simulators/vnfm-simulator/vnfm-service/src/test/java/org/onap/so/svnfm/simulator/controllers/TestSubscriptionNotificationController.java
plans/so/integration-etsi-testing/so-simulators/vnfm-simulator/vnfm-service/src/test/resources/application.yaml
scripts/optf-has/has/has-properties/conductor.conf.onap
scripts/optf-has/has/has_script.sh
scripts/optf-has/has/simulator_script.sh
scripts/optf-has/has/simulator_teardown_script.sh
tests/optf-has/has/data/nsi_selection_template_with_create.json
tests/optf-has/has/data/nsi_selection_template_with_nonsi.json
tests/optf-has/has/data/nsi_selection_template_with_reuse.json
tests/optf-has/has/data/nssi_selection_template.json
tests/optf-has/has/data/nssi_selection_template_unmatched.json
tests/optf-has/has/data/nst_selection_template.json [new file with mode: 0644]
tests/optf-has/has/optf_has_test.robot
tests/sdnc/sdnc_netconf_tls_post_deploy/resources/sdnc-keywords.robot
tests/sdnc/sdnc_netconf_tls_post_deploy/resources/sdnc-properties.robot
tests/sdnc/sdnc_netconf_tls_post_deploy/sdnc_post_deploy_cert_check.robot
tests/so/etsi/data/responses/expectedVnfPackage.json

index 1cb6507..6f4e547 100644 (file)
@@ -2,6 +2,7 @@
 #
 # ============LICENSE_START=======================================================
 #   Copyright (C) 2020 Nordix Foundation.
+#   Modification copyright (C) 2021 Samsung Electronics, Co., Ltd.
 # ================================================================================
 #  Licensed under the Apache License, Version 2.0 (the "License");
 #  you may not use this file except in compliance with the License.
@@ -119,11 +120,12 @@ for i in {1..10}; do
     break
   fi
   echo "Waiting for SDNC Service to Start Up..."
-  sleep 2m
+  sleep 30s
 done
 
 if [[ "${SDNC_IP}" == 'none' || "${SDNC_IP}" == '' || "${RESP_CODE}" != '200' ]]; then
-  echo "SDNC Service not started Could cause problems for testing activities...!"
+  echo "SDNC Service not started, setup failed"
+  exit 1
 fi
 
 # Check if SDNC-ODL Karaf Session started
@@ -149,17 +151,34 @@ if [ "$TIME" -ge "$TIME_OUT" ]; then
    exit 1;
 fi
 
+# Check if certificate installation is done
+TIME_OUT=300
+INTERVAL=10
+TIME=0
+while [ "$TIME" -lt "$TIME_OUT" ]; do
 
+  docker-compose -f "${SCRIPTS}"/sdnc/sdnc/docker-compose.yml logs sdnc | grep 'Everything OK in Certificate Installation'
 
+  if [ $? == 0 ] ; then
+    echo SDNC karaf started in $TIME seconds
+    break;
+  fi
+
+  echo Sleep: $INTERVAL seconds before testing if SDNC 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: karaf session not started in $TIME_OUT seconds, setup failed
+   exit 1;
+fi
 
 # Update default Networking bridge IP in mount.json file
 sed -i "s/pnfaddr/${LOCAL_IP}/g" "${REQUEST_DATA_PATH}"/mount.xml
 
 #########################################################################
 
-echo "Sleeping additional for 3 minutes to give application time to finish"
-sleep 3m
-
 # Export SDNC, AAF-Certservice-Cient, Netconf-Pnp-Simulator Continer Names
 export REQUEST_DATA_PATH="${REQUEST_DATA_PATH}"
 export SDNC_CONTAINER_NAME="${SDNC_CONTAINER_NAME}"
index e5290a9..1b6a88f 100644 (file)
@@ -5,6 +5,7 @@ TIME_OUT_DEFAULT_VALUE_SEC=1200
 PROJECT_NAME=etsiintegrationtesting
 DEFAULT_NETWORK_NAME=etsiintegrationtesting_default
 ETSI_CATALOG_IMAGE_VERSION=1.0.9
-SOL_003_ADAPTER_IMAGE_VERSION=1.8.0-STAGING-latest
-ETSI_NFVO_NS_LCM_IMAGE_VERSION=1.8.0-STAGING-latest
+SOL_003_ADAPTER_IMAGE_VERSION=1.8.1
+ETSI_NFVO_NS_LCM_IMAGE_VERSION=1.8.1
+SO_ADMIN_COCKPIT_IMAGE_VERSION=1.8.1
 MARIADB_VERSION=10.5.8
index 87e3066..df831c0 100644 (file)
@@ -358,7 +358,7 @@ spring:
 so:
   vnfm:
     adapter:
-      url: http://so-vnfm-adapter.onap:9092/so/vnfm-adapter/v1/
+      url: http://so-etsi-sol003-adapter.onap:9092/so/vnfm-adapter/v1/
       auth: Basic dm5mbTpwYXNzd29yZDEk
 org:
   onap:
index bb35d1f..8b1a72c 100644 (file)
@@ -33,7 +33,7 @@ mso:
 so:
   adapters:
     sol003-adapter:
-      url: http://so-vnfm-adapter:9092/so/vnfm-adapter/v1
+      url: http://so-etsi-sol003-adapter:9092/so/vnfm-adapter/v1
       auth: Basic dm5mbTpwYXNzd29yZDEk
 etsi-catalog-manager:
   base:
index 38c2f6d..ee93902 100644 (file)
@@ -28,7 +28,7 @@ sdc:
   endpoint: http://sdc-simulator:9991/
   toscametapath: Artifacts/Deployment/OTHER/TOSCA.meta
 vnfmadapter:
-  endpoint: http://so-vnfm-adapter.onap:9092
+  endpoint: http://so-etsi-sol003-adapter.onap:9092
 etsi-catalog-manager:
   vnfpkgm:
     endpoint: http://modeling-etsicatalog:8806/api/vnfpkgm/v1
index f92aa15..1f07a03 100644 (file)
@@ -22,11 +22,11 @@ services:
   api-handler-infra:
     image: onap/so/api-handler-infra:${TAG}
 #############################################################################
-  so-monitoring:
-    image: onap/so/so-monitoring:${TAG}
+  so-admin-cockpit:
+    image: onap/so/so-admin-cockpit:${SO_ADMIN_COCKPIT_IMAGE_VERSION}
 ################################################################################
-  so-vnfm-adapter:
-    image: onap/so/vnfm-adapter:${SOL_003_ADAPTER_IMAGE_VERSION}
+  so-etsi-sol003-adapter:
+    image: onap/so/so-etsi-sol003-adapter:${SOL_003_ADAPTER_IMAGE_VERSION}
 ################################################################################
   modeling-etsicatalog:
     image: ${NEXUS_DOCKER_REPO_MSO}/onap/modeling/etsicatalog:${ETSI_CATALOG_IMAGE_VERSION}
index 5f3d34c..0c4d03f 100644 (file)
@@ -190,7 +190,7 @@ services:
     hostname:
       bpmn-infra.so.testlab.onap.org
     links:
-      - "so-vnfm-adapter:so-vnfm-adapter.onap"
+      - "so-etsi-sol003-adapter:so-etsi-sol003-adapter.onap"
     depends_on:
       - mariadb
       - catalog-db-adapter
@@ -233,24 +233,24 @@ services:
     user: root
     entrypoint: /bin/sh -c '/app/wait-for.sh -q -t "300" request-db-adapter:8083 -- "/app/start-app.sh"'
 #############################################################################
-  so-monitoring:
-    image: ${NEXUS_DOCKER_REPO_MSO}/onap/so/so-monitoring:${TAG}
+  so-admin-cockpit:
+    image: ${NEXUS_DOCKER_REPO_MSO}/onap/so/so-admin-cockpit:${SO_ADMIN_COCKPIT_IMAGE_VERSION}
     ports:
       - "30224:30224"
     volumes:
       - ${CONFIG_DIR_PATH}/override-files/so-monitoring/onapheat:/app/config
     environment:
-      - APP=so-monitoring
+      - APP=so-admin-cockpit
       - JVM_ARGS=-Xms64m -Xmx512m
     hostname:
-      so-monitoring.so.testlab.onap.org
+      so-admin-cockpit.so.testlab.onap.org
     depends_on:
       - mariadb
       - catalog-db-adapter
       - request-db-adapter
 ################################################################################
-  so-vnfm-adapter:
-    image: ${NEXUS_DOCKER_REPO_MSO}/onap/so/vnfm-adapter:${SOL_003_ADAPTER_IMAGE_VERSION}
+  so-etsi-sol003-adapter:
+    image: ${NEXUS_DOCKER_REPO_MSO}/onap/so/so-etsi-sol003-adapter:${SOL_003_ADAPTER_IMAGE_VERSION}
     ports:
       - "9092:9092"
     volumes:
@@ -258,10 +258,10 @@ services:
       - ${CONFIG_DIR_PATH}/certificates/so-vnfm-adapter-certs:/app/so-vnfm-adapter-certs
       - ${CONFIG_DIR_PATH}/certificates/truststore/root-ca.crt:/app/ca-certificates/root-ca.crt
     environment:
-    - APP=so-vnfm-adapter
+    - APP=so-etsi-sol003-adapter
     - JVM_ARGS=-Xms64m -Xmx512m
     hostname:
-      so-vnfm-adapter
+      so-etsi-sol003-adapter
     depends_on:
       - request-db-adapter
     logging:
@@ -283,7 +283,7 @@ services:
       sdc-simulator
     depends_on:
       - mariadb
-      - so-vnfm-adapter
+      - so-etsi-sol003-adapter
     logging:
       driver: "json-file"
       options:
@@ -301,7 +301,7 @@ services:
       aai-simulator
     depends_on:
       - mariadb
-      - so-vnfm-adapter
+      - so-etsi-sol003-adapter
     logging:
       driver: "json-file"
       options:
@@ -321,10 +321,10 @@ services:
     hostname:
       so-vnfm-simulator
     links:
-      - "so-vnfm-adapter:so-vnfm-adapter.onap"
+      - "so-etsi-sol003-adapter:so-etsi-sol003-adapter.onap"
     depends_on:
       - mariadb
-      - so-vnfm-adapter
+      - so-etsi-sol003-adapter
     logging:
       driver: "json-file"
       options:
@@ -344,7 +344,7 @@ services:
       - CATALOG_DB=catalogdb
     depends_on:
       - mariadb
-      - so-vnfm-adapter
+      - so-etsi-sol003-adapter
     command:
       - "/config/apply-workarounds.sh"
 #################################################################################
@@ -359,7 +359,7 @@ services:
       sdnc-simulator
     depends_on:
       - mariadb
-      - so-vnfm-adapter
+      - so-etsi-sol003-adapter
     logging:
       driver: "json-file"
       options:
@@ -377,7 +377,7 @@ services:
       multicloud-simulator
     depends_on:
     - mariadb
-    - so-vnfm-adapter
+    - so-etsi-sol003-adapter
     logging:
       driver: "json-file"
       options:
@@ -414,7 +414,7 @@ services:
     hostname:
       modeling-etsicatalog
     links:
-      - "so-vnfm-adapter:so-vnfm-adapter.onap"
+      - "so-etsi-sol003-adapter:so-etsi-sol003-adapter.onap"
     depends_on:
       - mariadb
       - sdc-simulator
@@ -449,6 +449,6 @@ services:
       - aai-simulator
       - sdc-simulator
       - modeling-etsicatalog
-      - so-vnfm-adapter
+      - so-etsi-sol003-adapter
     user: root
     entrypoint: /bin/sh -c '/app/wait-for.sh -q -t "300" mariadb:3306 -- "/app/start-app.sh"'
index d886da9..ddda7b6 100644 (file)
@@ -37,7 +37,7 @@ public class SubscriptionManager {
     @Value("${vnfm-adapter.auth.password}")
     private String password;
 
-    @Value("${vnfm-adapter.base.endpoint:http://so-vnfm-adapter.onap:9092}")
+    @Value("${vnfm-adapter.base.endpoint:http://so-etsi-sol003-adapter.onap:9092}")
     private String baseEndpoint;
 
     @Autowired
index 6079a79..5d655b8 100644 (file)
@@ -48,7 +48,7 @@ vnfm-adapter:
       name: vnfm
       password: password1$
    base:
-      endpoint: http://so-vnfm-adapter.onap:9092
+      endpoint: http://so-etsi-sol003-adapter.onap:9092
 vnfds:
    vnfdlist:
       -  vnfdid: 1
index ba8ec00..c35bbaf 100644 (file)
@@ -80,7 +80,7 @@ import static org.springframework.test.web.client.response.MockRestResponseCreat
 public class TestSubscriptionNotificationController {
 
     private static final Logger LOGGER = getLogger(TestSubscriptionNotificationController.class);
-    private static final String SOL003_SUBSCRIPTION_URL = "http://so-vnfm-adapter.onap:9092" + VNFM_ADAPTER_SUBSCRIPTION_ENDPOINT;
+    private static final String SOL003_SUBSCRIPTION_URL = "http://so-etsi-sol003-adapter.onap:9092" + VNFM_ADAPTER_SUBSCRIPTION_ENDPOINT;
 
     @LocalServerPort
     private int port;
index 2f84beb..5e5aba8 100644 (file)
@@ -41,7 +41,7 @@ vnfm-adapter:
       name: vnfm
       password: password1$
    base:
-      endpoint: http://so-vnfm-adapter.onap:9092
+      endpoint: http://so-etsi-sol003-adapter.onap:9092
 vnfds:
    vnfdlist:
    -  vnfdid: 1
index 3ce7fa0..b8b0a0a 100644 (file)
@@ -585,3 +585,51 @@ concurrent = true
 
 # Extensions list to use (list value)
 #extensions = multicloud
+
+
+[sdc]
+
+#
+# From conductor
+#
+
+
+# Data Store table prefix. (string value)
+#table_prefix = sdc
+
+# Base URL for SDC, up to and not including the version, and without a
+# trailing slash. (string value)
+#server_url = https://controller:8443/sdc
+server_url = http://localhost:9595/sdc
+
+# Timeout for SDC Rest Call (string value)
+#sdc_rest_timeout = 30
+
+# Number of retry for SDC Rest Call (string value)
+#sdc_retries = 3
+
+# The version of A&AI in v# format. (string value)
+server_url_version = v1
+
+# SSL/TLS certificate file in pem format. This certificate must be registered
+# with the SDC endpoint. (string value)
+#certificate_file = certificate.pem
+certificate_file =
+
+# Private Certificate Key file in pem format. (string value)
+#certificate_key_file = certificate_key.pem
+certificate_key_file =
+
+# Certificate Authority Bundle file in pem format. Must contain the appropriate
+# trust chain for the Certificate file. (string value)
+#certificate_authority_bundle_file = certificate_authority_bundle.pem
+certificate_authority_bundle_file = /usr/local/bin/AAF_RootCA.cer
+
+# Username for SDC. (string value)
+#username =
+
+# Password for SDC. (string value)
+#password =
+
+temp_path = "/tmp/nsttemplates"
+
index 3b24d47..b845dda 100755 (executable)
@@ -31,7 +31,7 @@ cd ${DIR}
 COND_CONF=/tmp/conductor/properties/conductor.conf
 LOG_CONF=/tmp/conductor/properties/log.conf
 IMAGE_NAME=nexus3.onap.org:10001/onap/optf-has
-IMAGE_VER=2.1.2-SNAPSHOT-latest
+IMAGE_VER=2.1.3-SNAPSHOT-latest
 BUNDLE=/tmp/conductor/properties/AAF_RootCA.cer
 
 mkdir -p /tmp/conductor/properties
@@ -57,6 +57,13 @@ echo "AAISIM_IP=${AAISIM_IP}"
 # change AAI reference to the local instance
 sed  -i -e "s%localhost:8081/%${AAISIM_IP}:8081/%g" /tmp/conductor/properties/conductor.conf
 
+SDCSIM_IP=`docker inspect --format '{{ .NetworkSettings.Networks.bridge.IPAddress}}' sdcsim`
+echo "SDCSIM_IP=${SDCSIM_IP}"
+
+# change SDC reference to the local instance
+sed  -i -e "s%localhost:9595/%${SDCSIM_IP}:9595/%g" /tmp/conductor/properties/conductor.conf
+
+
 MULTICLOUDSIM_IP=`docker inspect --format '{{ .NetworkSettings.Networks.bridge.IPAddress}}' multicloudsim`
 echo "MULTICLOUDSIM_IP=${MULTICLOUDSIM_IP}"
 
index c52535c..a3e4faa 100755 (executable)
@@ -71,6 +71,25 @@ echo "MULTICLOUDSIM_IP=${MULTICLOUDSIM_IP}"
 
 ${WORKSPACE}/scripts/optf-has/has/wait_for_port.sh ${MULTICLOUDSIM_IP} 8082
 
+
+# prepare sdcsim
+cd ${WORK_DIR}/has/conductor/conductor/tests/functional/simulators/sdcsim/
+
+# check Dockerfile content
+cat ./Dockerfile
+
+# build multicloudsim
+docker build -t sdcsim .
+
+# run multicloudsim
+docker run -d --name sdcsim -p 9595:9595  sdcsim
+
+SDCSIM_IP=`docker inspect --format '{{ .NetworkSettings.Networks.bridge.IPAddress}}' sdcsim`
+echo "SDCSIM_IP=${SDCSIM_IP}"
+
+${WORKSPACE}/scripts/optf-has/has/wait_for_port.sh ${SDCSIM_IP} 9595
+
+
 # prepare aafsim
 echo "simulator_script: prepare aafsim "
 cd ${WORK_DIR}/has/conductor/conductor/tests/functional/simulators/aafsim/
index eb29445..14b3886 100755 (executable)
@@ -18,7 +18,9 @@ echo "optf/has scripts docker containers killing";
 docker stop aaisim
 docker stop multicloudsim
 docker stop aafsim
+docker stop sdcsim
 
 docker rm aaisim
 docker rm multicloudsim
 docker rm aafsim
+docker rm sdcsim
\ No newline at end of file
index 6d659f9..acf53ff 100644 (file)
                                 "get_param": "reliability"
                             },
                             "unit": ""
-                        },
-                        {
-                            "attribute": "coverage_area_ta_list",
-                            "operator": "eq",
-                            "threshold": {
-                                "get_param": "coverage_area_ta_list"
-                            },
-                            "unit": ""
                         }
                     ]
                 },
@@ -63,8 +55,7 @@
                     "filtering_attributes": {
                         "service_profile": {
                                         "latency": {"value": {"get_param": "latency"}, "operator": "lte"},
-                                        "reliability": {"value": {"get_param": "reliability"}, "operator": "gte"},
-                                        "coverage_area_ta_list": {"value": {"get_param": "coverage_area_ta_list"}, "operator": "eq"}
+                                        "reliability": {"value": {"get_param": "reliability"}, "operator": "gte"}
                                   },
                         "subnets":{
                         "core": {
                             }
                         },
                         "ran": {
-                            "coverage_area_ta_list": {
-                                "values": [
-                                    {
-                                        "get_param": "coverage_area_ta_list"
-                                    }
-                                ]
-                            },
                             "latency": {
                                 "max": {
                                     "get_param": "latency"
         "parameters": {
             "core_latency": 10,
             "core_reliability": 99.9,
-            "coverage_area_ta_list": "Chennai",
             "latency": 30,
             "ran_latency": 7,
             "ran_reliability": 99.9,
index 1b5b99e..b4e625a 100644 (file)
                                 "get_param": "reliability"
                             },
                             "unit": ""
-                        },
-                        {
-                            "attribute": "coverage_area_ta_list",
-                            "operator": "eq",
-                            "threshold": {
-                                "get_param": "coverage_area_ta_list"
-                            },
-                            "unit": ""
                         }
                     ]
                 },
@@ -63,8 +55,7 @@
                     "filtering_attributes": {
                         "service_profile": {
                                         "latency": {"value": {"get_param": "latency"}, "operator": "lte"},
-                                        "reliability": {"value": {"get_param": "reliability"}, "operator": "gte"},
-                                        "coverage_area_ta_list": {"value": {"get_param": "coverage_area_ta_list"}, "operator": "eq"}
+                                        "reliability": {"value": {"get_param": "reliability"}, "operator": "gte"}
                                   },
                         "subnets":{
                         "core": {
                             }
                         },
                         "ran": {
-                            "coverage_area_ta_list": {
-                                "values": [
-                                    {
-                                        "get_param": "coverage_area_ta_list"
-                                    }
-                                ]
-                            },
                             "latency": {
                                 "max": {
                                     "get_param": "latency"
         "parameters": {
             "core_latency": 10,
             "core_reliability": 99.9,
-            "coverage_area_ta_list": "Chennai",
             "latency": 30,
             "ran_latency": 7,
             "ran_reliability": 99.9,
index ff66b2d..3cce5f9 100644 (file)
                                 "get_param": "reliability"
                             },
                             "unit": ""
-                        },
-                        {
-                            "attribute": "coverage_area_ta_list",
-                            "operator": "eq",
-                            "threshold": {
-                                "get_param": "coverage_area_ta_list"
-                            },
-                            "unit": ""
                         }
                     ]
                 },
@@ -63,8 +55,7 @@
                     "filtering_attributes": {
                         "service_profile": {
                                         "latency": {"value": {"get_param": "latency"}, "operator": "lte"},
-                                        "reliability": {"value": {"get_param": "reliability"}, "operator": "gte"},
-                                        "coverage_area_ta_list": {"value": {"get_param": "coverage_area_ta_list"}, "operator": "eq"}
+                                        "reliability": {"value": {"get_param": "reliability"}, "operator": "gte"}
                                   },
                         "subnets":{
                         "core": {
                             }
                         },
                         "ran": {
-                            "coverage_area_ta_list": {
-                                "values": [
-                                    {
-                                        "get_param": "coverage_area_ta_list"
-                                    }
-                                ]
-                            },
+          
                             "latency": {
                                 "max": {
                                     "get_param": "latency"
         "parameters": {
             "core_latency": 10,
             "core_reliability": 99.9,
-            "coverage_area_ta_list": "Chennai",
             "latency": 30,
             "ran_latency": 7,
             "ran_reliability": 99.9,
index a498ca0..e165694 100644 (file)
@@ -7,7 +7,6 @@
    "template": {
       "homing_template_version": "2020-08-13",
       "parameters": {
-         "coverage_area_ta_list": "Chennai",
          "latency": 30,
          "reliability": 99.9
       },
                         "get_param": "reliability"
                      },
                      "unit": ""
-                  },
-                  {
-                     "attribute": "coverage_area_ta_list",
-                     "operator": "eq",
-                     "threshold": {
-                        "get_param": "coverage_area_ta_list"
-                     },
-                     "unit": ""
                   }
                ]
             },
index 4930280..23500c5 100644 (file)
@@ -7,7 +7,6 @@
    "template": {
       "homing_template_version": "2020-08-13",
       "parameters": {
-         "coverage_area_ta_list": "Chennai",
          "latency": 5,
          "reliability": 99.9
       },
                         "get_param": "reliability"
                      },
                      "unit": ""
-                  },
-                  {
-                     "attribute": "coverage_area_ta_list",
-                     "operator": "eq",
-                     "threshold": {
-                        "get_param": "coverage_area_ta_list"
-                     },
-                     "unit": ""
                   }
+     
                ]
             },
             "type": "threshold"
diff --git a/tests/optf-has/has/data/nst_selection_template.json b/tests/optf-has/has/data/nst_selection_template.json
new file mode 100644 (file)
index 0000000..4181914
--- /dev/null
@@ -0,0 +1,55 @@
+{
+   "name":"urllc_sample",
+   "files":{
+   },
+   "limit":10,
+   "num_solution":"1",
+   "timeout":1200,
+   "template":{
+      "homing_template_version":"2020-08-13",
+      "demands":{
+         "nst_demand":[
+            {
+               "inventory_provider":"aai",
+               "inventory_type":"nst",
+               "unique":"true",
+               "region":"RegionOne",
+               "filtering_attributes":{
+                  "model-role":"nst"
+               }
+            }
+         ]
+      },
+      "constraints":{
+         "nst_Threshold":{
+            "type":"threshold",
+            "demands":[
+               "nst_demand"
+            ],
+            "properties":{
+               "evaluate":[
+                  {
+                     "attribute":"latency",
+                     "operator":"lte",
+                     "threshold":30,
+                     "unit":"ms"
+                  }
+               ]
+            }
+         }      },
+      "optimization":{
+         "goal": "minimize",
+         "operation_function": {
+            "operator": "sum",
+            "operands": [{
+               "function": "attribute",
+               "params": {
+                  "demand": "nst_demand",
+                  "attribute": "latency"
+               }
+            }]
+         }
+      }
+   }
+}
\ No newline at end of file
index 9185fce..6085bce 100644 (file)
@@ -686,6 +686,40 @@ GetPlanWithNssiSelectionUnmatched
     Should Be Equal As Integers    ${resp.status_code}    200
     Should Be Equal    not found    ${resultStatus}
 
+# NST selection template
+SendPlanWithNSTSelection
+    [Documentation]    It sends a POST request to conductor
+    Create Session   optf-cond            ${COND_HOSTNAME}:${COND_PORT}
+    ${data}=         Get Binary File     ${CURDIR}${/}data${/}nst_selection_template.json
+    &{headers}=      Create Dictionary    Authorization=${HAS_Auth}    Content-Type=application/json  Accept=application/json
+    ${resp}=         Post Request        optf-cond   /v1/plans     data=${data}     headers=${headers}
+    Log To Console              *********************
+    Log To Console              response = ${resp}
+    Log To Console              body = ${resp.text}
+    ${response_json}    json.loads    ${resp.content}
+    ${generatedPlanId}=    Convert To String      ${response_json['id']}
+    Set Global Variable     ${generatedPlanId}
+    Log To Console              generatedPlanId = ${generatedPlanId}
+    Should Be Equal As Integers    ${resp.status_code}    201
+    Sleep    60s    Wait Plan Resolution
+
+GetPlanWithNsTSelection
+    [Documentation]    It sends a REST GET request to capture recommendations
+    Create Session   optf-cond            ${COND_HOSTNAME}:${COND_PORT}
+    &{headers}=      Create Dictionary    Authorization=${HAS_Auth}    Content-Type=application/json  Accept=application/json
+    ${resp}=         Get Request        optf-cond   /v1/plans/${generatedPlanId}    headers=${headers}
+    Log To Console              *********************
+    Log To Console              response = ${resp}
+    ${response_json}    json.loads    ${resp.content}
+    ${resultStatus}=    Convert To String      ${response_json['plans'][0]['status']}
+    ${instance_name}=    Convert To String      ${response_json['plans'][0]['recommendations'][0]['nst_demand']['candidate']['model_name']}
+    Set Global Variable     ${resultStatus}
+    Log To Console              resultStatus = ${resultStatus}
+    Log To Console              body = ${resp.text}
+    Should Be Equal As Integers    ${resp.status_code}    200
+    Should Be Equal    done    ${resultStatus}
+    Should Be Equal    EmbbNst    ${instance_name}
+
 
 *** Keywords ***
 
index 52cc5d2..3ea6164 100644 (file)
@@ -55,8 +55,6 @@ Send Get Request And Validate TLS Connection Response
     &{headers1}=  Create Dictionary    Authorization=Basic YWRtaW46S3A4Yko0U1hzek0wV1hsaGFrM2VIbGNzZTJnQXc4NHZhb0dHbUp2VXkyVQ==    Content-Type=application/json    Accept=application/json
     ${resp1}=    Get Request    sdnc_restconf    ${PNFSIM_MOUNT_PATH}    headers=${headers1}
     Should Be Equal As Strings    ${resp1.status_code}    ${resp_code}
-    Should Contain  ${resp1.content}     netconf-id
-    Should Contain  ${resp1.content}     netconf-param
 
 Send Delete Request And Validate PNF Mount Deleted
     [Documentation]   Send request to passed url and validate received response
index e6e9790..2f2d6f5 100644 (file)
@@ -28,7 +28,7 @@ ${SDNC_NETWORK_TOPOLOGY}                 /config/network-topology:network-topolo
 ${MOUNT_PATH}                            %{WORKSPACE}/tests/sdnc/sdnc_netconf_tls_post_deploy/cert-data
 ${SDNC_CSR_FILE}                         %{WORKSPACE}/tests/sdnc/sdnc_netconf_tls_post_deploy/csr/sdnc_csr.env
 ${SDNC_MOUNT_PATH}                       /config/network-topology:network-topology/topology/topology-netconf/node/PNFDemo
-${PNFSIM_MOUNT_PATH}                     /config/network-topology:network-topology/topology/topology-netconf/node/PNFDemo/yang-ext:mount/pnf-simulator
+${PNFSIM_MOUNT_PATH}                     /config/network-topology:network-topology/topology/topology-netconf/node/PNFDemo/yang-ext:mount/turing-machine:turing-machine
 
 # Netconf-Pnp-Simulator
 ${NETCONF_PNP_SIM_CONTAINER_NAME}        %{NETCONF_PNP_SIM_CONTAINER_NAME}
index 7d322c1..4d93597 100644 (file)
@@ -14,15 +14,14 @@ Check SDNC Keystore For Netopeer2 Certificates
     [Documentation]    Checking Keystore after SDNC istallation
     Send Get Request And Validate Response Sdnc  ${SDNC_KEYSTORE_CONFIG_PATH}  200
 
-# TLS connection to netconf simulator is not currently working. Commenting
-# out for now, and will uncomment when we have working solution.
-#Check SDNC And PNF TLS Connection Over Netopeer2 Certificates
-#    [Tags]      SDNC-PNF-TLS-CONNECTION-CHECK
-#   [Documentation]    Checking PNF Mount after SDNC Installation
-#    Send Get Request And Validate TLS Connection Response  ${SDNC_MOUNT_PATH}  200
-
-#Check PNF Delete And Remove Netopeer2 Certificates From Keystore
-#    [Tags]      SDNC-PNF-MOUNT-DELETE-CLEAR-KEYSTORE
-#    [Documentation]    Checking PNF Mount Delete from SDNC
-#   Send Delete Request And Validate PNF Mount Deleted  ${SDNC_MOUNT_PATH}  200
+
+Check SDNC And PNF TLS Connection Over Netopeer2 Certificates
+    [Tags]      SDNC-PNF-TLS-CONNECTION-CHECK
+   [Documentation]    Checking PNF Mount after SDNC Installation
+    Send Get Request And Validate TLS Connection Response  ${SDNC_MOUNT_PATH}  200
+
+Check PNF Delete And Remove Netopeer2 Certificates From Keystore
+    [Tags]      SDNC-PNF-MOUNT-DELETE-CLEAR-KEYSTORE
+    [Documentation]    Checking PNF Mount Delete from SDNC
+   Send Delete Request And Validate PNF Mount Deleted  ${SDNC_MOUNT_PATH}  200
 
index 41eeb8b..c97865e 100644 (file)
   "operationalState": "ENABLED",
   "_links": {
     "self": {
-      "href": "http://so-vnfm-adapter.onap:9092/so/vnfm-adapter/v1/vnfpkgm/v1/vnf_packages/73522444-e8e9-49c1-be29-d355800aa349"
+      "href": "http://so-etsi-sol003-adapter.onap:9092/so/vnfm-adapter/v1/vnfpkgm/v1/vnf_packages/73522444-e8e9-49c1-be29-d355800aa349"
     },
     "vnfd": {
-      "href": "http://so-vnfm-adapter.onap:9092/so/vnfm-adapter/v1/vnfpkgm/v1/vnf_packages/73522444-e8e9-49c1-be29-d355800aa349/vnfd"
+      "href": "http://so-etsi-sol003-adapter.onap:9092/so/vnfm-adapter/v1/vnfpkgm/v1/vnf_packages/73522444-e8e9-49c1-be29-d355800aa349/vnfd"
     },
     "packageContent": {
-      "href": "http://so-vnfm-adapter.onap:9092/so/vnfm-adapter/v1/vnfpkgm/v1/vnf_packages/73522444-e8e9-49c1-be29-d355800aa349/package_content"
+      "href": "http://so-etsi-sol003-adapter.onap:9092/so/vnfm-adapter/v1/vnfpkgm/v1/vnf_packages/73522444-e8e9-49c1-be29-d355800aa349/package_content"
     }
   }
 }