From 089b9279bff7cce2c9b9a5d21570b04b0eda3891 Mon Sep 17 00:00:00 2001 From: ecaiyanlinux Date: Thu, 21 Jan 2021 14:41:14 +0100 Subject: [PATCH] Update csit for nonrtric guilin branch Use robot framework, remove dependency on O-RAN-SC repo Change-Id: I6f4da7cf2610fd56bb9d7e7f2fdea8a5b7e9489a Signed-off-by: ecaiyanlinux Issue-ID: CCSDK-3090 --- plans/ccsdk-oran/polmansuite/FTC1.sh | 230 --------------------- plans/ccsdk-oran/polmansuite/FTC150.sh | 116 ----------- .../config/application_configuration.json.nosdnc | 39 ++++ .../config/application_configuration.json.sdnc | 48 +++++ .../ccsdk-oran/polmansuite/data/preparePmsData.sh | 150 ++++++++++++++ .../polmansuite/data/testdata/OSC/policy_type.json | 45 ++++ .../polmansuite/data/testdata/policy.json | 9 + .../polmansuite/data/testdata/service.json | 5 + .../polmansuite/data/testdata/v2/policy_osc.json | 16 ++ .../data/testdata/v2/policy_std_v2.json | 16 ++ .../polmansuite/data/testdata/v2/policy_type.json | 56 +++++ .../polmansuite/data/testdata/v2/service.json | 5 + plans/ccsdk-oran/polmansuite/docker-compose.yml | 78 +++++++ .../config/https-props-a1controller.properties | 24 +++ .../ccsdk-oran/polmansuite/sdnc/docker-compose.yml | 69 +++++++ plans/ccsdk-oran/polmansuite/setup.sh | 19 +- plans/ccsdk-oran/polmansuite/teardown.sh | 11 +- plans/ccsdk-oran/polmansuite/test/pms_a1sim.sh | 62 ++++++ .../ccsdk-oran/polmansuite/test/pms_a1sim_sdnc.sh | 66 ++++++ plans/ccsdk-oran/polmansuite/test_env-guilin.sh | 151 -------------- tests/ccsdk-oran/polmansuite/test.robot | 14 +- 21 files changed, 704 insertions(+), 525 deletions(-) delete mode 100755 plans/ccsdk-oran/polmansuite/FTC1.sh delete mode 100755 plans/ccsdk-oran/polmansuite/FTC150.sh create mode 100644 plans/ccsdk-oran/polmansuite/config/application_configuration.json.nosdnc create mode 100644 plans/ccsdk-oran/polmansuite/config/application_configuration.json.sdnc create mode 100755 plans/ccsdk-oran/polmansuite/data/preparePmsData.sh create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/OSC/policy_type.json create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/policy.json create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/service.json create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_osc.json create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_std_v2.json create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_type.json create mode 100644 plans/ccsdk-oran/polmansuite/data/testdata/v2/service.json create mode 100644 plans/ccsdk-oran/polmansuite/docker-compose.yml create mode 100644 plans/ccsdk-oran/polmansuite/sdnc/config/https-props-a1controller.properties create mode 100644 plans/ccsdk-oran/polmansuite/sdnc/docker-compose.yml create mode 100755 plans/ccsdk-oran/polmansuite/test/pms_a1sim.sh create mode 100755 plans/ccsdk-oran/polmansuite/test/pms_a1sim_sdnc.sh delete mode 100644 plans/ccsdk-oran/polmansuite/test_env-guilin.sh diff --git a/plans/ccsdk-oran/polmansuite/FTC1.sh b/plans/ccsdk-oran/polmansuite/FTC1.sh deleted file mode 100755 index 6ce544af..00000000 --- a/plans/ccsdk-oran/polmansuite/FTC1.sh +++ /dev/null @@ -1,230 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START=============================================== -# Copyright (C) 2020 Nordix Foundation. 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================================================= -# - - -TC_ONELINE_DESCR="Sanity test, create service and then create,update and delete a policy using http/https and Agent REST/DMAAP with/without SDNC controller" - -#App names to include in the test, space separated list -INCLUDED_IMAGES="CBS CONSUL CP CR MR PA RICSIM SDNC" - -#SUPPORTED TEST ENV FILE -SUPPORTED_PROFILES="ONAP-GUILIN" - -. ../common/testcase_common.sh $@ -. ../common/agent_api_functions.sh -. ../common/ricsimulator_api_functions.sh -. ../common/cr_api_functions.sh - -#### TEST BEGIN #### - - -generate_uuid - -# Tested variants of REST/DMAAP/SDNC config -TESTED_VARIANTS="REST DMAAP" -#Test agent and simulator protocol versions (others are http only) -TESTED_PROTOCOLS="HTTP HTTPS" - -for __httpx in $TESTED_PROTOCOLS ; do - for interface in $TESTED_VARIANTS ; do - - echo "#####################################################################" - echo "#####################################################################" - echo "### Testing agent: $interface using $__httpx" - echo "#####################################################################" - echo "#####################################################################" - - #Local vars in test script - ########################## - - if [ $__httpx == "HTTPS" ]; then - # Path to callback receiver - CR_PATH="https://$CR_APP_NAME:$CR_EXTERNAL_SECURE_PORT/callbacks" - use_cr_https - else - # Path to callback receiver - CR_PATH="http://$CR_APP_NAME:$CR_EXTERNAL_PORT/callbacks" - use_cr_http - fi - - # Clean container and start all needed containers # - clean_containers - - if [ $__httpx == "HTTPS" ]; then - #"Using secure ports towards simulators" - use_simulator_https - else - #"Using non-secure ports towards simulators" - use_simulator_http - fi - - start_ric_simulators ricsim_g1 1 OSC_2.1.0 - start_ric_simulators ricsim_g2 1 STD_1.1.3 - - start_mr - - if [ $__httpx == "HTTPS" ]; then - #echo "Using secure ports between agent and MR" - use_mr_https - else - #"Using non-secure ports between agent and MR" - use_mr_http - fi - - start_cr - - if [ $interface == "REST+SDNC" ] || [ $interface == "DMAAP+SDNC" ]; then - - start_sdnc - - if [ $__httpx == "HTTPS" ]; then - # "Using secure ports towards SDNC" - use_sdnc_https - else - #"Using non-secure ports towards SDNC" - use_sdnc_http - fi - fi - - start_consul_cbs - - if [ $interface == "REST+SDNC" ] || [ $interface == "DMAAP+SDNC" ]; then - prepare_consul_config SDNC ".consul_config.json" - else - prepare_consul_config NOSDNC ".consul_config.json" - fi - - consul_config_app ".consul_config.json" - - start_control_panel - - start_policy_agent - - set_agent_debug - - if [ $interface == "DMAAP" ] || [ $interface == "DMAAP+SDNC" ]; then - if [ $__httpx == "HTTPS" ]; then - echo "Using secure ports towards dmaap" - use_agent_dmaap_https - else - echo "Using non-secure ports towards dmaap" - use_agent_dmaap_http - fi - else - if [ $__httpx == "HTTPS" ]; then - echo "Using secure ports towards the agent" - use_agent_rest_https - else - echo "Using non-secure ports towards the agent" - use_agent_rest_http - fi - fi - - - cr_equal received_callbacks 0 - mr_equal requests_submitted 0 - - sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json - - api_equal json:rics 2 60 - - api_equal json:policy_schemas 2 120 - - api_equal json:policy_types 2 - - api_equal json:policies 0 - - api_equal json:policy_ids 0 - - echo "############################################" - echo "############## Health check ################" - echo "############################################" - - api_get_status 200 - - echo "############################################" - echo "##### Service registry and supervision #####" - echo "############################################" - - api_put_service 201 "serv1" 1000 "$CR_PATH/1" - - api_get_service_ids 200 "serv1" - - api_put_services_keepalive 200 "serv1" - - echo "############################################" - echo "############## RIC Repository ##############" - echo "############################################" - - api_get_rics 200 NOTYPE "ricsim_g1_1:me1_ricsim_g1_1,me2_ricsim_g1_1:1:AVAILABLE ricsim_g2_1:me1_ricsim_g2_1,me2_ricsim_g2_1:EMPTYTYPE:AVAILABLE" - - echo "############################################" - echo "########### A1 Policy Management ###########" - echo "############################################" - - api_put_policy 201 "serv1" ricsim_g1_1 1 5000 NOTRANSIENT testdata/OSC/pi1_template.json - api_put_policy 200 "serv1" ricsim_g1_1 1 5000 NOTRANSIENT testdata/OSC/pi1_template.json - - api_put_policy 201 "serv1" ricsim_g2_1 NOTYPE 5100 NOTRANSIENT testdata/STD/pi1_template.json - api_put_policy 200 "serv1" ricsim_g2_1 NOTYPE 5100 NOTRANSIENT testdata/STD/pi1_template.json - - api_delete_policy 204 5000 - - api_delete_policy 204 5100 - - api_equal json:policies 0 - - api_equal json:policy_ids 0 - - cr_equal received_callbacks 0 - - if [ $interface == "DMAAP" ] || [ $interface == "DMAAP+SDNC" ]; then - VAL=11 # Number of Agent API calls over DMAAP - mr_equal requests_fetched $VAL - mr_equal responses_submitted $VAL - mr_equal responses_fetched $VAL - mr_equal current_requests 0 - mr_equal current_responses 0 - else - mr_equal requests_submitted 0 - fi - - if [ $interface == "REST+SDNC" ] || [ $interface == "DMAAP+SDNC" ]; then - sim_contains_str ricsim_g1_1 remote_hosts "a1-controller" - sim_contains_str ricsim_g2_1 remote_hosts "a1-controller" - else - sim_contains_str ricsim_g1_1 remote_hosts "policy-agent" - sim_contains_str ricsim_g2_1 remote_hosts "policy-agent" - fi - - check_policy_agent_logs - check_control_panel_logs - - store_logs "${__httpx}__${interface}" - - done - -done - -#### TEST COMPLETE #### - - -print_result - -auto_clean_containers diff --git a/plans/ccsdk-oran/polmansuite/FTC150.sh b/plans/ccsdk-oran/polmansuite/FTC150.sh deleted file mode 100755 index 7b87d4c9..00000000 --- a/plans/ccsdk-oran/polmansuite/FTC150.sh +++ /dev/null @@ -1,116 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START=============================================== -# Copyright (C) 2020 Nordix Foundation. 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================================================= -# - - -TC_ONELINE_DESCR="Sample tests of the SDNC A1 controller restconf API using http/https (no agent)" - -#App names to include in the test, space separated list -INCLUDED_IMAGES="RICSIM SDNC" - -#SUPPORTED TEST ENV FILE -SUPPORTED_PROFILES="ONAP-GUILIN" - -. ../common/testcase_common.sh $@ -. ../common/controller_api_functions.sh -. ../common/ricsimulator_api_functions.sh - -#### TEST BEGIN #### - -generate_uuid - -#Test agent and simulator protocol versions (others are http only) -NB_TESTED_PROTOCOLS="HTTP HTTPS" -SB_TESTED_PROTOCOLS="HTTP HTTPS" - -for __nb_httpx in $NB_TESTED_PROTOCOLS ; do - for __sb_httpx in $SB_TESTED_PROTOCOLS ; do - - echo "#####################################################################" - echo "#####################################################################" - echo "### Testing SDNC using Northbound: $__nb_httpx and Southbound: $__sb_httpx" - echo "#####################################################################" - echo "#####################################################################" - - - # Clean container and start all needed containers # - clean_containers - - start_ric_simulators ricsim_g1 1 OSC_2.1.0 - start_ric_simulators ricsim_g2 1 STD_1.1.3 - - start_sdnc - - if [ $__nb_httpx == "HTTPS" ]; then - # "Using secure ports towards SDNC" - use_sdnc_https - else - #"Using non-secure ports towards SDNC" - use_sdnc_http - fi - - if [ $__sb_httpx == "HTTPS" ]; then - # "Using secure ports towards SDNC" - use_simulator_https - else - #"Using non-secure ports towards SDNC" - use_simulator_http - fi - - # API tests - - controller_api_get_A1_policy_type 404 OSC ricsim_g1_1 1 - - sim_put_policy_type 201 ricsim_g1_1 1 testdata/OSC/sim_1.json - - - controller_api_get_A1_policy_ids 200 OSC ricsim_g1_1 1 - controller_api_get_A1_policy_ids 200 STD ricsim_g2_1 - - controller_api_get_A1_policy_type 200 OSC ricsim_g1_1 1 - controller_api_get_A1_policy_type 200 OSC ricsim_g1_1 1 testdata/OSC/sim_1.json - controller_api_get_A1_policy_type 404 OSC ricsim_g1_1 99 - - controller_api_put_A1_policy 200 OSC ricsim_g1_1 1 4000 testdata/OSC/pi1_template.json - controller_api_put_A1_policy 404 OSC ricsim_g1_1 5 1001 testdata/OSC/pi1_template.json - controller_api_put_A1_policy 200 STD ricsim_g2_1 5000 testdata/STD/pi1_template.json - - controller_api_get_A1_policy_ids 200 OSC ricsim_g1_1 1 4000 - controller_api_get_A1_policy_ids 200 STD ricsim_g2_1 5000 - - controller_api_get_A1_policy_status 200 OSC ricsim_g1_1 1 4000 - controller_api_get_A1_policy_status 200 STD ricsim_g2_1 5000 - - VAL='NOT IN EFFECT' - controller_api_get_A1_policy_status 200 OSC ricsim_g1_1 1 4000 "$VAL" "false" - controller_api_get_A1_policy_status 200 STD ricsim_g2_1 5000 "UNDEFINED" - - controller_api_delete_A1_policy 200 OSC ricsim_g1_1 1 4000 - controller_api_delete_A1_policy 200 STD ricsim_g2_1 5000 - - store_logs "NB_"$__nb_httpx"_SB_"$__sb_httpx - - done - -done - -#### TEST COMPLETE #### - -print_result - -auto_clean_containers \ No newline at end of file diff --git a/plans/ccsdk-oran/polmansuite/config/application_configuration.json.nosdnc b/plans/ccsdk-oran/polmansuite/config/application_configuration.json.nosdnc new file mode 100644 index 00000000..8ba5328b --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/config/application_configuration.json.nosdnc @@ -0,0 +1,39 @@ +{ + "config":{ + "//description":"Application configuration", + "ric":[ + { + "name":"ric1", + "baseUrl":"https://a1-sim-OSC:8185/", + "managedElementIds":[ + "kista_1", + "kista_2" + ] + }, + { + "name":"ric2", + "baseUrl":"https://a1-sim-STD:8185/", + "managedElementIds":[ + "kista_1", + "kista_2" + ] + } + ], + "streams_publishes":{ + "dmaap_publisher":{ + "type":"message_router", + "dmaap_info":{ + "topic_url":"http://dmaap-mr:3904/events/A1-POLICY-AGENT-WRITE" + } + } + }, + "streams_subscribes":{ + "dmaap_subscriber":{ + "type":"message_router", + "dmaap_info":{ + "topic_url":"http://dmaap-mr:3904/events/A1-POLICY-AGENT-READ/users/policy-agent?timeout=15000&limit=100" + } + } + } + } + } diff --git a/plans/ccsdk-oran/polmansuite/config/application_configuration.json.sdnc b/plans/ccsdk-oran/polmansuite/config/application_configuration.json.sdnc new file mode 100644 index 00000000..c2a54f3d --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/config/application_configuration.json.sdnc @@ -0,0 +1,48 @@ +{ + "config":{ + "controller": [ + { + "name": "controller1", + "baseUrl": "https://a1-controller:8443", + "userName": "admin", + "password": "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" + } + ], + "ric":[ + { + "name":"ric1", + "controller": "controller1", + "baseUrl":"https://a1-sim-OSC:8185/", + "managedElementIds":[ + "kista_1", + "kista_2" + ] + }, + { + "name":"ric2", + "controller": "controller1", + "baseUrl":"https://a1-sim-STD:8185/", + "managedElementIds":[ + "kista_1", + "kista_2" + ] + } + ], + "streams_publishes":{ + "dmaap_publisher":{ + "type":"message_router", + "dmaap_info":{ + "topic_url":"http://dmaap-mr:3904/events/A1-POLICY-AGENT-WRITE" + } + } + }, + "streams_subscribes":{ + "dmaap_subscriber":{ + "type":"message_router", + "dmaap_info":{ + "topic_url":"http://dmaap-mr:3904/events/A1-POLICY-AGENT-READ/users/policy-agent?timeout=15000&limit=100" + } + } + } + } + } diff --git a/plans/ccsdk-oran/polmansuite/data/preparePmsData.sh b/plans/ccsdk-oran/polmansuite/data/preparePmsData.sh new file mode 100755 index 00000000..fb1d03e7 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/preparePmsData.sh @@ -0,0 +1,150 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2021 Nordix Foundation. 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================================================= +# + +# The scripts in data/ will generate some dummy data in the running system. +# It will create: +# one policy type in a1-sim-OSC +# one service in policy agent +# one policy in a1-sim-OSC +# one policy in a1-sim-STD + +# Run command: +# ./preparePmsData.sh [policy-agent port] [a1-sim-OSC port] [a1-sim-STD port] [http/https] + +policy_agent_port=${1:-8081} +a1_sim_OSC_port=${2:-30001} +a1_sim_STD_port=${3:-30003} +httpx=${4:-"http"} +SHELL_FOLDER=$(cd "$(dirname "$0")";pwd) + +echo "using policy_agent port: "$policy_agent_port +echo "using a1-sim-OSC port: "$a1_sim_OSC_port +echo "using a1-sim-STD port: "$a1_sim_STD_port +echo "using protocol: "$httpx +echo -e "\n" + +checkRes (){ + if [ "$res" != "$expect" ]; then + echo "$res is not expected! exit!" + exit 1; + fi +} + +echo "policy agent status:" +curlString="curl -skw %{http_code} $httpx://localhost:$policy_agent_port/status" +res=$($curlString) +echo "$res" +expect="hunky dory200" +checkRes +echo -e "\n" + +echo "ric1 version:" +curlString="curl -skw %{http_code} $httpx://localhost:$a1_sim_OSC_port/counter/interface" +res=$($curlString) +echo "$res" +expect="OSC_2.1.0200" +checkRes +echo -e "\n" + +echo "ric2 version:" +curlString="curl -skw %{http_code} $httpx://localhost:$a1_sim_STD_port/counter/interface" +res=$($curlString) +echo "$res" +expect="STD_1.1.3200" +checkRes +echo -e "\n" + +echo "create policy type 1 to ric1:" +curlString="curl -X PUT -skw %{http_code} $httpx://localhost:$a1_sim_OSC_port/policytype?id=1 -H Content-Type:application/json --data-binary @${SHELL_FOLDER}/testdata/OSC/policy_type.json" +res=$($curlString) +echo "$res" +expect="Policy type 1 is OK.201" +checkRes +echo -e "\n" + + +for i in {1..12}; do + echo "policy types from policy agent:" + curlString="curl -skw %{http_code} $httpx://localhost:$policy_agent_port/v2/policy-types" + res=$($curlString) + echo "$res" + expect="{\"policy_type_ids\":[\"\",\"1\"]}200" + if [ "$res" == "$expect" ]; then + echo -e "\n" + break; + else + sleep $i + fi +done + +echo "create service 1 to policy agent:" +curlString="curl -k -X PUT -sw %{http_code} -H accept:application/json -H Content-Type:application/json $httpx://localhost:$policy_agent_port/service --data-binary @testdata/service.json" +res=$($curlString) +echo $res +expect="OK201" +checkRes +echo -e "\n" + +echo "create policy 2000 to ric1 with type1 and service1 via policy agent:" +curlString="curl -k -X PUT -sw %{http_code} -H accept:application/json -H Content-Type:application/json $httpx://localhost:$policy_agent_port/policy?id=2000&ric=ric1&service=service1&type=1 --data-binary @testdata/policy.json" +res=$($curlString) +echo $res +expect="201" +checkRes +echo -e "\n" + +echo "policy numbers from ric1:" +curlString="curl -skw %{http_code} $httpx://localhost:$a1_sim_OSC_port/counter/num_instances" +res=$($curlString) +echo $res +expect="1200" +checkRes +echo -e "\n" + +echo "create policy 2100 to ric2 with service1 via policy agent, no type:" +curlString="curl -k -X PUT -sw %{http_code} -H accept:application/json -H Content-Type:application/json $httpx://localhost:$policy_agent_port/policy?id=2100&ric=ric2&service=service1 --data-binary @testdata/policy.json" +res=$($curlString) +echo $res +expect="201" +checkRes +echo -e "\n" + +echo "policy numbers from ric2:" +curlString="curl -skw %{http_code} $httpx://localhost:$a1_sim_STD_port/counter/num_instances" +res=$($curlString) +echo $res +expect="1200" +checkRes +echo -e "\n" + +echo "policy id 2000 from policy agent:" +curlString="curl -s -o /dev/null -I -w %{http_code} $httpx://localhost:$policy_agent_port/policy?id=2000" +res=$($curlString) +echo $res +expect="200" +checkRes +echo -e "\n" + +echo "policy id 2100 from policy agent:" +curlString="curl -s -o /dev/null -I -w %{http_code} $httpx://localhost:$policy_agent_port/policy?id=2100" +res=$($curlString) +echo $res +expect="200" +checkRes +echo -e "\n" diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/OSC/policy_type.json b/plans/ccsdk-oran/polmansuite/data/testdata/OSC/policy_type.json new file mode 100644 index 00000000..aeea7733 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/OSC/policy_type.json @@ -0,0 +1,45 @@ +{ + "name": "pt1", + "description": "pt1 policy type", + "policy_type_id": 1, + "create_schema": { + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "OSC_Type1_1.0.0", + "description": "Type 1 policy type", + "type": "object", + "properties": { + "scope": { + "type": "object", + "properties": { + "ueId": { + "type": "string" + }, + "qosId": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "ueId", + "qosId" + ] + }, + "qosObjectives": { + "type": "object", + "properties": { + "priorityLevel": { + "type": "number" + } + }, + "additionalProperties": false, + "required": [ + "priorityLevel" + ] + } + }, + "additionalProperties": false, + "required": [ + "scope", "qosObjectives" + ] + } +} diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/policy.json b/plans/ccsdk-oran/polmansuite/data/testdata/policy.json new file mode 100644 index 00000000..ac1b538b --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/policy.json @@ -0,0 +1,9 @@ +{ + "scope": { + "ueId": "ue3100", + "qosId": "qos3100" + }, + "qosObjectives": { + "priorityLevel": 3100 + } +} diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/service.json b/plans/ccsdk-oran/polmansuite/data/testdata/service.json new file mode 100644 index 00000000..7bb66514 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/service.json @@ -0,0 +1,5 @@ +{ + "callbackUrl": "https://callback-receiver:8091/callbacks/1", + "keepAliveIntervalSeconds": "3600", + "serviceName": "service1" +} diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_osc.json b/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_osc.json new file mode 100644 index 00000000..902f9111 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_osc.json @@ -0,0 +1,16 @@ +{ + "ric_id": "ric1", + "policy_id": "aa8feaa88d944d919ef0e83f2172a5100", + "service_id": "controlpanel", + "policytype_id": "1", + "status_notification_uri": "http://callback-receiver:8090/callbacks/test", + "policy_data": { + "scope": { + "ueId": "ue5100", + "qosId": "qos5100" + }, + "qosObjectives": { + "priorityLevel": 5100 + } + } +} \ No newline at end of file diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_std_v2.json b/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_std_v2.json new file mode 100644 index 00000000..dcb7e38f --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_std_v2.json @@ -0,0 +1,16 @@ +{ + "ric_id": "ric2", + "policy_id": "aa8feaa88d944d919ef0e83f2172a5000", + "service_id": "controlpanel", + "policytype_id": "2", + "status_notification_uri": "http://callback-receiver:8090/callbacks/test", + "policy_data": { + "scope": { + "ueId": "ue5000", + "qosId": "qos5000" + }, + "qosObjectives": { + "priorityLevel": 5000 + } + } +} \ No newline at end of file diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_type.json b/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_type.json new file mode 100644 index 00000000..931498c4 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/v2/policy_type.json @@ -0,0 +1,56 @@ +{ + "policySchema": { + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "STD_QOS_0_2_0", + "description": "STD QOS policy type", + "type": "object", + "properties": { + "scope": { + "type": "object", + "properties": { + "ueId": { + "type": "string" + }, + "qosId": { + "type": "string" + } + }, + "additionalProperties": false, + "required": [ + "ueId", + "qosId" + ] + }, + "qosObjectives": { + "type": "object", + "properties": { + "priorityLevel": { + "type": "number" + } + }, + "additionalProperties": false, + "required": [ + "priorityLevel" + ] + } + } + }, + "statusSchema": { + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "STD_QOS_0.2.0", + "description": "STD QOS policy type status", + "type": "object", + "properties": { + "enforceStatus": { + "type": "string" + }, + "enforceReason": { + "type": "string" + }, + "additionalProperties": false, + "required": [ + "enforceStatus" + ] + } + } + } \ No newline at end of file diff --git a/plans/ccsdk-oran/polmansuite/data/testdata/v2/service.json b/plans/ccsdk-oran/polmansuite/data/testdata/v2/service.json new file mode 100644 index 00000000..d984cbab --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/data/testdata/v2/service.json @@ -0,0 +1,5 @@ +{ + "callback_url": "http://callback-receiver:8090/callbacks/ric-registration", + "keep_alive_interval_seconds": "0", + "service_id": "ric-registration" +} \ No newline at end of file diff --git a/plans/ccsdk-oran/polmansuite/docker-compose.yml b/plans/ccsdk-oran/polmansuite/docker-compose.yml new file mode 100644 index 00000000..4022f8c4 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/docker-compose.yml @@ -0,0 +1,78 @@ +# Copyright (C) 2021 Nordix Foundation. 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================================================= +# +version: '3' + +networks: + default: + driver: bridge + +services: + policy-agent: + image: nexus3.onap.org:10003/onap/ccsdk-oran-a1policymanagementservice:1.0.2-STAGING-latest + container_name: policy-agent + networks: + default: + aliases: + - policy-agent-container + ports: + - 8081:8081 + - 8433:8433 + volumes: + - ./config/application_configuration.json:/opt/app/policy-agent/data/application_configuration.json:ro + # For using own certs instead of the default ones (built into the container), + # place them in config/ directory, update the application-policyagent.yaml file, and uncomment the following lines + # - ./config/keystore-policyagent.jks:/opt/app/policy-agent/etc/cert/keystore.jks:ro + # - ./config/truststore-policyagent.jks:/opt/app/policy-agent/etc/cert/truststore.jks:ro + # - ./config/application-policyagent.yaml:/opt/app/policy-agent/config/application.yaml:ro + + a1-sim-OSC: + image: nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator:2.1.0 + container_name: a1-sim-OSC + networks: + - default + ports: + - 30001:8085 + - 30002:8185 + environment: + - A1_VERSION=OSC_2.1.0 + - REMOTE_HOSTS_LOGGING=1 + - ALLOW_HTTP=true + + a1-sim-STD: + image: nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator:2.1.0 + container_name: a1-sim-STD + networks: + - default + ports: + - 30003:8085 + - 30004:8185 + environment: + - A1_VERSION=STD_1.1.3 + - REMOTE_HOSTS_LOGGING=1 + - ALLOW_HTTP=true + + a1-sim-STD-v2: + image: nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator:2.1.0 + container_name: a1-sim-STD-v2 + networks: + - default + ports: + - 30005:8085 + - 30006:8185 + environment: + - A1_VERSION=STD_2.0.0 + - REMOTE_HOSTS_LOGGING=1 + - ALLOW_HTTP=true diff --git a/plans/ccsdk-oran/polmansuite/sdnc/config/https-props-a1controller.properties b/plans/ccsdk-oran/polmansuite/sdnc/config/https-props-a1controller.properties new file mode 100644 index 00000000..7c4b1c17 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/sdnc/config/https-props-a1controller.properties @@ -0,0 +1,24 @@ +# ========================LICENSE_START================================= +# O-RAN-SC +# %% +# Copyright (C) 2021 Nordix Foundation +# %% +# 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=================================== + +key-store=/etc/ssl/certs/java/keystore.jks +key-password=sdnc-a1-controller +keystore-password=sdnc-a1-controller +isTrustStoreUsed=true +trust-store=/etc/ssl/certs/java/truststore.jks +truststore-password=sdnc-a1-controller diff --git a/plans/ccsdk-oran/polmansuite/sdnc/docker-compose.yml b/plans/ccsdk-oran/polmansuite/sdnc/docker-compose.yml new file mode 100644 index 00000000..ea069024 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/sdnc/docker-compose.yml @@ -0,0 +1,69 @@ +# Copyright (C) 2021 Nordix Foundation. 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================================================= +# +version: '3' + +networks: + default: + driver: bridge + +services: + db: + image: mysql/mysql-server:5.6 + container_name: sdnc-db + networks: + - default + ports: + - "3306" + environment: + - MYSQL_ROOT_PASSWORD=openECOMP1.0 + - MYSQL_ROOT_HOST=% + logging: + driver: "json-file" + options: + max-size: "30m" + max-file: "5" + + a1-controller: + image: nexus3.onap.org:10003/onap/sdnc-image:2.0.5-STAGING-latest + depends_on : + - db + container_name: a1-controller + networks: + - default + entrypoint: ["/opt/onap/sdnc/bin/startODL.sh"] + ports: + - 8282:8181 + - 8443:8443 + links: + - db:dbhost + - db:sdnctldb01 + - db:sdnctldb02 + environment: + - MYSQL_ROOT_PASSWORD=openECOMP1.0 + - SDNC_DB_INIT=true + - SDNC_CONFIG_DIR=/opt/onap/sdnc/data/properties + - A1_TRUSTSTORE_PASSWORD=a1adapter + # For using own certs instead of the default ones (built into the container), + # place them in config/ directory, update the https-props-a1controller.properties file, and uncomment the following lines + #volumes: + # - ./sdnc/config/keystore-a1controller.jks:/etc/ssl/certs/java/keystore.jks:ro + # - ./sdnc/config/truststore-a1controller.jks:/etc/ssl/certs/java/truststore.jks:ro + # - ./sdnc/config/https-props-a1controller.properties:/opt/onap/sdnc/data/properties/https-props.properties:ro + logging: + driver: "json-file" + options: + max-size: "30m" + max-file: "5" diff --git a/plans/ccsdk-oran/polmansuite/setup.sh b/plans/ccsdk-oran/polmansuite/setup.sh index cf9ebde2..188b84db 100755 --- a/plans/ccsdk-oran/polmansuite/setup.sh +++ b/plans/ccsdk-oran/polmansuite/setup.sh @@ -1,7 +1,7 @@ #!/bin/bash # ============LICENSE_START=============================================== -# Copyright (C) 2020 Nordix Foundation. All rights reserved. +# Copyright (C) 2021 Nordix Foundation. 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. @@ -19,17 +19,16 @@ cd $WORKSPACE/archives -git clone "https://gerrit.o-ran-sc.org/r/nonrtric" -b cherry - -AUTOTEST_ROOT=$WORKSPACE/archives/nonrtric/test/auto-test POLMAN_PLANS=$WORKSPACE/plans/ccsdk-oran/polmansuite +ARCHIVES=$WORKSPACE/archives -#Copy test script, adapted to ONAP images -cp $POLMAN_PLANS/FTC1.sh $WORKSPACE/archives/nonrtric/test/auto-test/FTC1.sh -cp $POLMAN_PLANS/FTC150.sh $WORKSPACE/archives/nonrtric/test/auto-test/FTC150.sh - -TEST_ENV=$POLMAN_PLANS/test_env-${GERRIT_BRANCH}.sh +#Copy test script +cp $POLMAN_PLANS/docker-compose.yml $WORKSPACE/archives/docker-compose.yml +cp -rf $POLMAN_PLANS/config/ $WORKSPACE/archives/config/ +cp -rf $POLMAN_PLANS/data/ $WORKSPACE/archives/data/ +cp -rf $POLMAN_PLANS/test/ $WORKSPACE/archives/test/ +cp -rf $POLMAN_PLANS/sdnc/ $WORKSPACE/archives/sdnc/ #Make the env vars availble to the robot scripts -ROBOT_VARIABLES="-b debug.log -v AUTOTEST_ROOT:${AUTOTEST_ROOT} -v TEST_ENV:${TEST_ENV}" +ROBOT_VARIABLES="-b debug.log -v ARCHIVES:${ARCHIVES}" diff --git a/plans/ccsdk-oran/polmansuite/teardown.sh b/plans/ccsdk-oran/polmansuite/teardown.sh index 6b0c5f6b..c619d0c9 100755 --- a/plans/ccsdk-oran/polmansuite/teardown.sh +++ b/plans/ccsdk-oran/polmansuite/teardown.sh @@ -1,7 +1,7 @@ #!/bin/bash # ============LICENSE_START=============================================== -# Copyright (C) 2020 Nordix Foundation. All rights reserved. +# Copyright (C) 2021 Nordix Foundation. 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. @@ -17,10 +17,5 @@ # ============LICENSE_END================================================= # All started containers stopped and removed by the test case - - -# Fix ownership. Mounted resources to consul changes ownership which prevents csit test cleanup -cd $WORKSPACE/archives/nonrtric/test/simulator-group/ -sudo chown $(id -u):$(id -g) consul_cbs -sudo chown $(id -u):$(id -g) consul_cbs/consul - +docker stop $(docker ps -aq) +docker system prune -f diff --git a/plans/ccsdk-oran/polmansuite/test/pms_a1sim.sh b/plans/ccsdk-oran/polmansuite/test/pms_a1sim.sh new file mode 100755 index 00000000..f3344cf1 --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/test/pms_a1sim.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2021 Nordix Foundation. 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================================================= + +SHELL_FOLDER=$(cd "$(dirname "$0")";pwd) +docker stop $(docker ps -aq) +docker system prune -f + +cd ${SHELL_FOLDER}/../config +cp application_configuration.json.nosdnc application_configuration.json + +cd ${SHELL_FOLDER}/../ +docker-compose up -d + +checkStatus(){ + for i in {1..20}; do + res=$($1) + echo "$res" + expect=$2 + if [ "$res" == "$expect" ]; then + echo -e "$3 is alive!\n" + break; + else + sleep $i + fi + done +} +# Healthcheck docker containers + +# check SIM1 status +echo "check SIM1 status:" +checkStatus "curl -skw %{http_code} http://localhost:30001/" "OK200" "SIM1" + +# check SIM2 status +echo "check SIM2 status:" +checkStatus "curl -skw %{http_code} http://localhost:30003/" "OK200" "SIM2" + +# check SIM3 status +echo "check SIM3 status:" +checkStatus "curl -skw %{http_code} http://localhost:30005/" "OK200" "SIM3" + +# check PMS status +echo "check PMS status:" +checkStatus "curl -skw %{http_code} http://localhost:8081/status" "hunky dory200" "PMS" + +cd ${SHELL_FOLDER}/../data +./preparePmsData.sh + diff --git a/plans/ccsdk-oran/polmansuite/test/pms_a1sim_sdnc.sh b/plans/ccsdk-oran/polmansuite/test/pms_a1sim_sdnc.sh new file mode 100755 index 00000000..5bf81b3f --- /dev/null +++ b/plans/ccsdk-oran/polmansuite/test/pms_a1sim_sdnc.sh @@ -0,0 +1,66 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2021 Nordix Foundation. 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================================================= + +SHELL_FOLDER=$(cd "$(dirname "$0")";pwd) +docker stop $(docker ps -aq) +docker system prune -f + +cd ${SHELL_FOLDER}/../config +cp application_configuration.json.sdnc application_configuration.json + +cd ${SHELL_FOLDER}/../ +docker-compose -f docker-compose.yml -f sdnc/docker-compose.yml up -d + +checkStatus(){ + for i in {1..20}; do + res=$($1) + echo "$res" + expect=$2 + if [ "$res" == "$expect" ]; then + echo -e "$3 is alive!\n" + break; + else + sleep $i + fi + done +} +# Healthcheck docker containers + +# check SIM1 status +echo "check SIM1 status:" +checkStatus "curl -skw %{http_code} http://localhost:30001/" "OK200" "SIM1" + +# check SIM2 status +echo "check SIM2 status:" +checkStatus "curl -skw %{http_code} http://localhost:30003/" "OK200" "SIM2" + +# check SIM3 status +echo "check SIM3 status:" +checkStatus "curl -skw %{http_code} http://localhost:30005/" "OK200" "SIM3" + +# check PMS status +echo "check PMS status:" +checkStatus "curl -skw %{http_code} http://localhost:8081/status" "hunky dory200" "PMS" + +# check SDNC status +echo "check SDNC status:" +checkStatus "curl -s -o /dev/null -I -w %{http_code} http://localhost:8282/apidoc/explorer/" "200" "SDNC" + +cd ${SHELL_FOLDER}/../data +./preparePmsData.sh + diff --git a/plans/ccsdk-oran/polmansuite/test_env-guilin.sh b/plans/ccsdk-oran/polmansuite/test_env-guilin.sh deleted file mode 100644 index f9895781..00000000 --- a/plans/ccsdk-oran/polmansuite/test_env-guilin.sh +++ /dev/null @@ -1,151 +0,0 @@ -#!/bin/bash - -# ============LICENSE_START=============================================== -# Copyright (C) 2020 Nordix Foundation. 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================================================= -# - -#Profile for guilin release -TEST_ENV_PROFILE="ONAP-GUILIN" -NEXUS_PROXY_REPO="nexus3.onap.org:10001/" - -# Set up the image and tags for the test. Do not add the image tag to the image names. - -# NOTE: A env var for each container is created by the test script. -# This var will point to the local or remote var depending on how -# the test script is started. The name format is _IMAGE, ie with 'LOCAL' or 'REMOTE'. - -# Tag for guilin branch -# Remote Policy Agent image and tag -POLICY_AGENT_REMOTE_IMAGE="nexus3.onap.org:10003/onap/ccsdk-oran-a1policymanagementservice" -POLICY_AGENT_REMOTE_IMAGE_TAG="1.0.2-SNAPSHOT" - - -# Control Panel remote image and tag -CONTROL_PANEL_REMOTE_IMAGE="nexus3.o-ran-sc.org:10004/o-ran-sc/nonrtric-controlpanel" -CONTROL_PANEL_REMOTE_IMAGE_TAG="2.0.0" - -# Tag for guilin branch -# SDNC A1 Controller remote image and tag -SDNC_A1_CONTROLLER_REMOTE_IMAGE="nexus3.onap.org:10003/onap/sdnc-image" -SDNC_A1_CONTROLLER_REMOTE_IMAGE_TAG="2.0.3-STAGING-latest" - - -#SDNC DB remote image and tag -SDNC_DB_REMOTE_IMAGE=$NEXUS_PROXY_REPO"mysql/mysql-server" -SDNC_DB_REMOTE_IMAGE_TAG="5.6" -#No local image for DB, remote image always used - - -# Near RT RIC Simulator remote image and tag -RIC_SIM_REMOTE_IMAGE="nexus3.o-ran-sc.org:10004/o-ran-sc/a1-simulator" -RIC_SIM_REMOTE_IMAGE_TAG="2.0.0" - - -#Consul remote image and tag -CONSUL_REMOTE_IMAGE=$NEXUS_PROXY_REPO"consul" -CONSUL_REMOTE_IMAGE_TAG="1.7.2" -#No local image for Consul, remote image always used - - -#CBS remote image and tag -CBS_REMOTE_IMAGE="nexus3.onap.org:10001/onap/org.onap.dcaegen2.platform.configbinding.app-app" -CBS_REMOTE_IMAGE_TAG="2.3.0" -#No local image for CBS, remote image always used - - -#MR stub image and tag -MRSTUB_LOCAL_IMAGE="mrstub" -MRSTUB_LOCAL_IMAGE_TAG="latest" -#No remote image for MR stub, local image always used - -#Callback receiver image and tag -CR_LOCAL_IMAGE="callback-receiver" -CR_LOCAL_IMAGE_TAG="latest" -#No remote image for CR, local image always used - -# Common env var for auto-test. Vars used by docker-compose need to be exported -export DOCKER_SIM_NWNAME="nonrtric-docker-net" # Name of docker private network - -export POLICY_AGENT_EXTERNAL_PORT=8081 # Policy Agent container external port (host -> container) -export POLICY_AGENT_INTERNAL_PORT=8081 # Policy Agent container internal port (container -> container) -export POLICY_AGENT_EXTERNAL_SECURE_PORT=8433 # Policy Agent container external secure port (host -> container) -export POLICY_AGENT_INTERNAL_SECURE_PORT=8433 # Policy Agent container internal secure port (container -> container) - -export POLICY_AGENT_APP_NAME="policy-agent" # Name for Policy Agent container -POLICY_AGENT_LOGPATH="/var/log/policy-agent/application.log" # Path the application log in the Policy Agent container -export POLICY_AGENT_APP_NAME_ALIAS="policy-agent-container" # Alias name, name used by the control panel - -export MR_EXTERNAL_PORT=3905 # MR stub container external port (host -> container) -export MR_INTERNAL_PORT=3905 # MR stub container internal port (container -> container) -export MR_EXTERNAL_SECURE_PORT=3906 # MR stub container external secure port (host -> container) -export MR_INTERNAL_SECURE_PORT=3906 # MR stub container internal secure port (container -> container) -export MR_APP_NAME="message-router" # Name for the MR -export MR_READ_URL="/events/A1-POLICY-AGENT-READ/users/policy-agent?timeout=15000&limit=100" # Path to read messages from MR -export MR_WRITE_URL="/events/A1-POLICY-AGENT-WRITE" # Path write messages to MR - -export CR_EXTERNAL_PORT=8090 # Callback receiver container external port (host -> container) -export CR_INTERNAL_PORT=8090 # Callback receiver container internal port (container -> container) -export CR_EXTERNAL_SECURE_PORT=8091 # Callback receiver container external secure port (host -> container) -export CR_INTERNAL_SECURE_PORT=8091 # Callback receiver container internal secure port (container -> container) -export CR_APP_NAME="callback-receiver" # Name for the Callback receiver - -export CONSUL_HOST="consul-server" # Host name of consul -export CONSUL_EXTERNAL_PORT=8500 # Consul container external port (host -> container) -export CONSUL_INTERNAL_PORT=8500 # Consul container internal port (container -> container) -export CONSUL_APP_NAME="polman-consul" # Name for consul container - -export CBS_APP_NAME="polman-cbs" # Name for CBS container -export CBS_EXTERNAL_PORT=10000 # CBS container external port (host -> container) -export CBS_INTERNAL_PORT=10000 # CBS container internal port (container -> container) -export CONFIG_BINDING_SERVICE="config-binding-service" # Host name of CBS - -export RIC_SIM_BASE="g" # Base name of the RIC Simulator container, shall be the group code - # Note, a prefix is added to each container name by the .env file in the 'ric' dir -RIC_SIM_PREFIX="ricsim" # Prefix added to ric container name, added in the .env file in the 'ric' dir - # This prefix can be changed from the command line -export RIC_SIM_INTERNAL_PORT=8085 # RIC Simulator container internal port (container -> container). - # (external ports allocated by docker) -export RIC_SIM_INTERNAL_SECURE_PORT=8185 # RIC Simulator container internal secure port (container -> container). - # (external ports allocated by docker) - -export SDNC_APP_NAME="a1-controller" # Name of the SNDC A1 Controller container -export SDNC_EXTERNAL_PORT=8282 # SNDC A1 Controller container external port (host -> container) -export SDNC_INTERNAL_PORT=8181 # SNDC A1 Controller container internal port (container -> container) -export SDNC_EXTERNAL_SECURE_PORT=8443 # SNDC A1 Controller container external securee port (host -> container) -export SDNC_INTERNAL_SECURE_PORT=8443 # SNDC A1 Controller container internal secure port (container -> container) -export SDNC_DB_APP_NAME="sdnc-db" # Name of the SDNC DB container -export SDNC_A1_TRUSTSTORE_PASSWORD="a1adapter" # SDNC truststore password -SDNC_USER="admin" # SDNC username -SDNC_PWD="Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" # SNDC PWD -SDNC_API_URL="/restconf/operations/A1-ADAPTER-API:" # Base url path for SNDC API -SDNC_ALIVE_URL="/apidoc/explorer/" # Base url path for SNDC API docs (for alive check) -SDNC_KARAF_LOG="/opt/opendaylight/data/log/karaf.log" # Path to karaf log - - -export CONTROL_PANEL_APP_NAME="control-panel" # Name of the Control Panel container -export CONTROL_PANEL_EXTERNAL_PORT=8080 # Control Panel container external port (host -> container) -export CONTROL_PANEL_INTERNAL_PORT=8080 # Control Panel container external port (host -> container) -CONTROL_PANEL_LOGPATH="/logs/nonrtric-controlpanel.log" # Path the application log in the Control Panel container - -UUID="" # UUID used as prefix to the policy id to simulate a real UUID - # Testscript need to set the UUID to use other this empty prefix is used - -RESTBASE="http://localhost:"$POLICY_AGENT_EXTERNAL_PORT # Base url to the Agent NB REST interface -RESTBASE_SECURE="https://localhost:"$POLICY_AGENT_EXTERNAL_SECURE_PORT # Base url to the secure Agent NB REST interface -DMAAPBASE="http://localhost:"$MR_EXTERNAL_PORT # Base url to the Dmaap adapter, http -DMAAPBASE_SECURE="https://localhost:"$MR_EXTERNAL_SECURE_PORT # Base url to the Dmaap adapter, https -ADAPTER=$RESTBASE # Adapter holds the address the agent R-APP interface (REST OR DMAAP) - # The values of this var is swiched between the two base url when needed diff --git a/tests/ccsdk-oran/polmansuite/test.robot b/tests/ccsdk-oran/polmansuite/test.robot index eebe478b..59d73eb8 100644 --- a/tests/ccsdk-oran/polmansuite/test.robot +++ b/tests/ccsdk-oran/polmansuite/test.robot @@ -5,19 +5,13 @@ Library Process *** Test Cases *** Functional Test Case 1 - [Documentation] Functional Test Case 1 - FTC1 - Start Process ${AUTOTEST_ROOT}/FTC1.sh remote auto-clean --env-file ${TEST_ENV} shell=true cwd=${AUTOTEST_ROOT} + [Documentation] Deploy PMS without SDNC + Start Process ${ARCHIVES}/test/pms_a1sim.sh ${cli_cmd_output}= Wait For Process timeout=3600 Should Be Equal as Integers ${cli_cmd_output.rc} 0 - ${ResultFileContent}= Get File ${AUTOTEST_ROOT}/.resultFTC1.txt - Should Be Equal As Integers ${ResultFileContent} 0 Functional Test Case 2 - [Documentation] Functional Test Case 2 - FTC150 - Start Process ${AUTOTEST_ROOT}/FTC150.sh remote auto-clean --env-file ${TEST_ENV} shell=true cwd=${AUTOTEST_ROOT} + [Documentation] Deploy PMS with SDNC + Start Process ${ARCHIVES}/test/pms_a1sim_sdnc.sh ${cli_cmd_output}= Wait For Process timeout=3600 Should Be Equal as Integers ${cli_cmd_output.rc} 0 - ${ResultFileContent}= Get File ${AUTOTEST_ROOT}/.resultFTC150.txt - Should Be Equal As Integers ${ResultFileContent} 0 - - -- 2.16.6