Adaptation to changes in ECS, PMS and RAPP Catalogue 82/5482/4
authorBjornMagnussonXA <bjorn.magnusson@est.tech>
Wed, 20 Jan 2021 13:24:13 +0000 (14:24 +0100)
committerBjornMagnussonXA <bjorn.magnusson@est.tech>
Thu, 21 Jan 2021 07:39:34 +0000 (08:39 +0100)
Issue-ID: NONRTRIC-378

Signed-off-by: BjornMagnussonXA <bjorn.magnusson@est.tech>
Change-Id: If84d338503e5da275b2462bc91a0a388ecd1ca34

22 files changed:
test/auto-test/FTC1100.sh
test/auto-test/FTC1800.sh
test/auto-test/FTC310.sh
test/auto-test/FTC800.sh
test/auto-test/FTC810.sh
test/auto-test/FTC850.sh
test/auto-test/FTC900.sh
test/auto-test/FTC_HELM-RECIPE.sh [moved from test/auto-test/FTC_HELM-RECEPIE.sh with 92% similarity]
test/auto-test/PM_EI_DEMO.sh
test/common/agent_api_functions.sh
test/common/ecs_api_functions.sh
test/common/prodstub_api_functions.sh
test/common/test_env-onap-honolulu.sh
test/common/test_env-oran-cherry.sh
test/common/test_env-oran-dawn.sh
test/cr/app/cr.py
test/cr/app/nginx.conf
test/simulator-group/ecs/application.yaml
test/simulator-group/ecs/docker-compose.yml
test/simulator-group/ecs/mnt/.gitignore
test/simulator-group/policy_agent/mnt/application.yaml [deleted file]
test/simulator-group/sim-monitor.js

index d312caa..fe59d45 100755 (executable)
 #
 
 
-TC_ONELINE_DESCR="ECS full intefaces walkthrough"
+TC_ONELINE_DESCR="ECS full interfaces walkthrough"
 
 #App names to include in the test when running docker, space separated list
-DOCKER_INCLUDED_IMAGES="ECS PRODSTUB CR RICSIM CP"
+DOCKER_INCLUDED_IMAGES="ECS PRODSTUB CR RICSIM CP HTTPPROXY"
 
 #App names to include in the test when running kubernetes, space separated list
-KUBE_INCLUDED_IMAGES=" PRODSTUB CR ECS RICSIM CP "
+KUBE_INCLUDED_IMAGES=" PRODSTUB CR ECS RICSIM CP HTTPPROXY"
 #Prestarted app (not started by script) to include in the test when running kubernetes, space separated list
 KUBE_PRESTARTED_IMAGES=" "
 
@@ -40,6 +40,7 @@ SUPPORTED_RUNMODES="DOCKER KUBE"
 . ../common/control_panel_api_functions.sh
 . ../common/controller_api_functions.sh
 . ../common/ricsimulator_api_functions.sh
+. ../common/http_proxy_api_functions.sh
 
 #### TEST BEGIN ####
 
@@ -55,7 +56,9 @@ use_simulator_https
 
 use_cr_https
 
-start_ecs $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml
+#start_http_proxy  #Uncomment this cmd to run with proxy
+
+start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml  #Change NOPROXY to PROXY to run with http proxy
 
 if [ $RUNMODE == "KUBE" ]; then
     ecs_api_admin_reset
@@ -191,7 +194,11 @@ else
     ecs_api_a1_delete_job 404 test-job
 fi
 
-ecs_api_edp_get_producer_jobs 404 test-prod
+if [ $ECS_VERSION == "V1-1" ]; then
+    ecs_api_edp_get_producer_jobs 404 test-prod
+else
+    ecs_api_edp_get_producer_jobs_2 404 test-prod
+fi
 
 if [ $ECS_VERSION == "V1-2" ]; then
     ecs_api_edp_get_type_2 404 test-type
@@ -270,8 +277,11 @@ else
 
     ecs_api_a1_get_job_status 404 test-job
 fi
-
-ecs_api_edp_get_producer_jobs 200 prod-a EMPTY
+if [ $ECS_VERSION == "V1-1" ]; then
+    ecs_api_edp_get_producer_jobs 200 prod-a EMPTY
+else
+    ecs_api_edp_get_producer_jobs_2 200 prod-a EMPTY
+fi
 
 ## Create a job for prod-a
 ## job1 - prod-a
@@ -282,7 +292,11 @@ else
 fi
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+fi
 
 ecs_api_a1_get_job_ids 200 type1 NOWNER job1
 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
@@ -303,7 +317,11 @@ fi
 
 prodstub_equal create/prod-a/job1 1
 
-ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+else
+    ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+fi
 
 ## Create a second job for prod-a
 ## job2 - prod-a
@@ -314,8 +332,11 @@ else
 fi
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
-
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+fi
 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_1 job1
 ecs_api_a1_get_job_ids 200 type1 ricsim_g3_2 job2
@@ -335,7 +356,11 @@ fi
 
 prodstub_equal create/prod-a/job2 1
 
-ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+else
+    ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+fi
 
 ## Setup prod-b
 if [ $ECS_VERSION == "V1-1" ]; then
@@ -391,7 +416,11 @@ fi
 prodstub_equal create/prod-b/job3 1
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
+fi
 
 ecs_api_a1_get_job_ids 200 type1 NOWNER job1 job2
 ecs_api_a1_get_job_ids 200 type2 NOWNER job3
@@ -409,9 +438,13 @@ else
     ecs_api_a1_get_job_status 200 job3 ENABLED
 fi
 
-ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
-ecs_api_edp_get_producer_jobs 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
-
+if [ $ECS_VERSION == "V1-1" ]; then
+    ecs_api_edp_get_producer_jobs 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+    ecs_api_edp_get_producer_jobs 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
+else
+    ecs_api_edp_get_producer_jobs_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+    ecs_api_edp_get_producer_jobs_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template.json
+fi
 
 ## Setup prod-c (no types)
 if [ $ECS_VERSION == "V1-1" ]; then
@@ -507,7 +540,11 @@ else
     ecs_api_a1_get_job_status 200 job3 ENABLED
 fi
 
-prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
+else
+    prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
+fi
 
 ecs_api_a1_get_job_ids 200 NOTYPE NOWNER job1 job2 job3
 if [ $ECS_VERSION == "V1-1" ]; then
@@ -564,8 +601,11 @@ cr_equal received_callbacks 2 30
 cr_equal received_callbacks?id=job3-status 2
 cr_api_check_all_ecs_events 200 job3-status ENABLED
 
-prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
-
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
+else
+    prodstub_check_jobdata_2 200 prod-b job3 type2 $TARGET3 ricsim_g3_3 testdata/ecs/job-template2.json
+fi
 
 ## Setup prod-d
 if [ $ECS_VERSION == "V1-1" ]; then
@@ -583,7 +623,11 @@ else
     ecs_api_a1_put_job 201 job8 type4 $TARGET8 ricsim_g3_4 $STATUS8 testdata/ecs/job-template.json
 fi
 
-prodstub_check_jobdata 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-d job8 type4 $TARGET8 ricsim_g3_4 testdata/ecs/job-template.json
+fi
 
 prodstub_equal create/prod-d/job8 1
 prodstub_equal delete/prod-d/job8 0
@@ -673,7 +717,11 @@ else
     ecs_api_a1_put_job 201 job10 type6 $TARGET10 ricsim_g3_4 $STATUS10 testdata/ecs/job-template.json
 fi
 
-prodstub_check_jobdata 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-e job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
+fi
 
 prodstub_equal create/prod-e/job10 1
 prodstub_equal delete/prod-e/job10 0
@@ -696,7 +744,11 @@ fi
 
 ecs_api_a1_get_job_ids 200 type6 NOWNER job10
 
-prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template.json
+fi
 
 prodstub_equal create/prod-f/job10 1
 prodstub_equal delete/prod-f/job10 0
@@ -919,7 +971,11 @@ fi
 #Wait for job to be updated
 sleep_wait 120
 
-prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
+else
+    prodstub_check_jobdata_2 200 prod-f job10 type6 $TARGET10 ricsim_g3_4 testdata/ecs/job-template2.json
+fi
 
 prodstub_arm_producer 200 prod-f 400
 
index 90ea3b5..70f9f53 100755 (executable)
@@ -18,7 +18,7 @@
 #
 
 
-TC_ONELINE_DESCR="ECS Create 10000 jobs and restart, test job persisency"
+TC_ONELINE_DESCR="ECS Create 10000 jobs and restart, test job persistency"
 
 #App names to include in the test when running docker, space separated list
 DOCKER_INCLUDED_IMAGES="ECS PRODSTUB CR CP"
@@ -50,7 +50,7 @@ use_ecs_rest_http
 
 use_prod_stub_http
 
-start_ecs $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml
+start_ecs NOPROXY $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml
 
 start_prod_stub
 
@@ -353,22 +353,46 @@ fi
 for ((i=1; i<=$NUM_JOBS; i++))
 do
     if [ $(($i%5)) -eq 0 ]; then
-        prodstub_check_jobdata 200 prod-a job$i type1 $TARGET ric1 testdata/ecs/job-template.json
-        prodstub_check_jobdata 200 prod-b job$i type1 $TARGET ric1 testdata/ecs/job-template.json
-        prodstub_check_jobdata 200 prod-c job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-a job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata 200 prod-b job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata 200 prod-c job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            prodstub_check_jobdata_2 200 prod-a job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata_2 200 prod-b job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata_2 200 prod-c job$i type1 $TARGET ric1 testdata/ecs/job-template.json
+        fi
+
     fi
     if [ $(($i%5)) -eq 1 ]; then
-        prodstub_check_jobdata 200 prod-b job$i type2 $TARGET ric1 testdata/ecs/job-template.json
-        prodstub_check_jobdata 200 prod-c job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-b job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata 200 prod-c job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            prodstub_check_jobdata_2 200 prod-b job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+            prodstub_check_jobdata_2 200 prod-c job$i type2 $TARGET ric1 testdata/ecs/job-template.json
+        fi
     fi
     if [ $(($i%5)) -eq 2 ]; then
-        prodstub_check_jobdata 200 prod-c job$i type3 $TARGET ric1 testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-c job$i type3 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            prodstub_check_jobdata_2 200 prod-c job$i type3 $TARGET ric1 testdata/ecs/job-template.json
+        fi
     fi
     if [ $(($i%5)) -eq 3 ]; then
-        prodstub_check_jobdata 200 prod-d job$i type4 $TARGET ric1 testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-d job$i type4 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            prodstub_check_jobdata_2 200 prod-d job$i type4 $TARGET ric1 testdata/ecs/job-template.json
+        fi
     fi
     if [ $(($i%5)) -eq 4 ]; then
-        prodstub_check_jobdata 200 prod-d job$i type5 $TARGET ric1 testdata/ecs/job-template.json
+        if [ $ECS_VERSION == "V1-1" ]; then
+            prodstub_check_jobdata 200 prod-d job$i type5 $TARGET ric1 testdata/ecs/job-template.json
+        else
+            prodstub_check_jobdata_2 200 prod-d job$i type5 $TARGET ric1 testdata/ecs/job-template.json
+        fi
     fi
 done
 
index dd79b33..941f26b 100755 (executable)
@@ -35,6 +35,7 @@ SUPPORTED_RUNMODES="DOCKER"
 . ../common/mr_api_functions.sh
 . ../common/control_panel_api_functions.sh
 . ../common/controller_api_functions.sh
+. ../common/consul_cbs_functions.sh
 
 #### TEST BEGIN ####
 
@@ -50,7 +51,7 @@ for consul_conf in $TESTED_VARIANTS ; do
     # Clean container and start all needed containers #
     clean_environment
 
-    start_policy_agent
+    start_policy_agent NOPROXY $SIM_GROUP/$POLICY_AGENT_COMPOSE_DIR/application.yaml
 
     set_agent_trace
 
index 0be6be8..4d1d54a 100755 (executable)
@@ -39,6 +39,7 @@ SUPPORTED_RUNMODES="DOCKER KUBE"
 . ../common/mr_api_functions.sh
 . ../common/control_panel_api_functions.sh
 . ../common/controller_api_functions.sh
+. ../common/consul_cbs_functions.sh
 
 #### TEST BEGIN ####
 
index a92106e..c10cab2 100755 (executable)
@@ -39,6 +39,7 @@ SUPPORTED_RUNMODES="DOCKER KUBE"
 . ../common/mr_api_functions.sh
 . ../common/control_panel_api_functions.sh
 . ../common/controller_api_functions.sh
+. ../common/consul_cbs_functions.sh
 
 #### TEST BEGIN ####
 
index 82e50f1..d50dc51 100755 (executable)
@@ -38,6 +38,8 @@ SUPPORTED_RUNMODES="DOCKER KUBE"
 . ../common/mr_api_functions.sh
 . ../common/control_panel_api_functions.sh
 . ../common/controller_api_functions.sh
+. ../common/consul_cbs_functions.sh
+. ../common/cr_api_functions.sh
 
 #### TEST BEGIN ####
 
index b3e4d29..d2656c4 100755 (executable)
@@ -38,6 +38,7 @@ SUPPORTED_RUNMODES="DOCKER KUBE"
 . ../common/mr_api_functions.sh
 . ../common/control_panel_api_functions.sh
 . ../common/controller_api_functions.sh
+. ../common/consul_cbs_functions.sh
 
 #### TEST BEGIN ####
 
similarity index 92%
rename from test/auto-test/FTC_HELM-RECEPIE.sh
rename to test/auto-test/FTC_HELM-RECIPE.sh
index a9f5e5e..8c13e65 100755 (executable)
@@ -52,7 +52,11 @@ use_sdnc_https
 use_simulator_https
 use_ecs_rest_https
 use_prod_stub_https
-use_rapp_catalogue_http
+if [ $ECS_VERSION == "V1-1" ]; then
+    use_rapp_catalogue_http # https not yet supported
+else
+    use_rapp_catalogue_https
+fi
 
 echo -e "$RED CHECK WHY RC HTTPS DOES NOT WORK $ERED"
 
@@ -92,7 +96,7 @@ start_cr
 
 start_prod_stub
 
-start_ecs
+start_ecs NOPROXY
 
 set_ecs_trace
 
@@ -274,8 +278,11 @@ else
 fi
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
-
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+fi
 
 ## Create a second job for prod-a
 ## job2 - prod-a
@@ -286,8 +293,11 @@ else
 fi
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
-
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+fi
 
 echo "ADD EVENT/STATUS CHECK"
 
index 324d892..9c27fda 100755 (executable)
@@ -56,7 +56,12 @@ use_sdnc_https
 use_simulator_https
 use_ecs_rest_https
 use_prod_stub_https
-use_rapp_catalogue_http # https not yet supported
+if [ $ECS_VERSION == "V1-1" ]; then
+    use_rapp_catalogue_http # https not yet supported
+else
+    use_rapp_catalogue_https
+fi
+
 
 if [ "$PMS_VERSION" == "V2" ]; then
     notificationurl=$CR_SERVICE_PATH"/test"
@@ -69,13 +74,15 @@ clean_environment
 
 STD_NUM_RICS=2
 
+#start_http_proxy  #Remove the comment on this line, comment out 'start_sdnc' and change SDNC to NOSDNC a few lines below to run with proxy
+
 start_ric_simulators $RIC_SIM_PREFIX"_g3" $STD_NUM_RICS STD_2.0.0
 
 start_mr #Just to prevent errors in the agent log...
 
 start_control_panel $SIM_GROUP/$CONTROL_PANEL_COMPOSE_DIR/application.properties
 
-start_sdnc
+start_sdnc    # Comment this line to run PMS with proxy
 
 start_policy_agent PROXY $SIM_GROUP/$POLICY_AGENT_COMPOSE_DIR/application.yaml
 
@@ -83,7 +90,7 @@ if [ $RUNMODE == "DOCKER" ]; then
     start_consul_cbs
 fi
 
-prepare_consul_config      SDNC  ".consul_config.json"
+prepare_consul_config      SDNC  ".consul_config.json"   #Change to NOSDNC if running PMS with  proxy
 
 if [ $RUNMODE == "KUBE" ]; then
     agent_load_config                       ".consul_config.json"
@@ -95,7 +102,7 @@ start_cr
 
 start_prod_stub
 
-start_ecs $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml
+start_ecs PROXY $SIM_GROUP/$ECS_COMPOSE_DIR/application.yaml
 
 start_rapp_catalogue
 
@@ -214,7 +221,11 @@ else
 fi
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-a job1 type1 $TARGET1 ricsim_g3_1 testdata/ecs/job-template.json
+fi
 
 
 ## Create a second job for prod-a
@@ -226,7 +237,11 @@ else
 fi
 
 # Check the job data in the producer
-prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+if [ $ECS_VERSION == "V1-1" ]; then
+    prodstub_check_jobdata 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+else
+    prodstub_check_jobdata_2 200 prod-a job2 type1 $TARGET2 ricsim_g3_2 testdata/ecs/job-template.json
+fi
 
 check_policy_agent_logs
 check_ecs_logs
index 1cd430e..80b49d1 100644 (file)
@@ -88,7 +88,8 @@ use_agent_dmaap_https() {
 }
 
 # Start the policy agent
-# args: (kube only) PROXY|NOPROXY <config-file> [ <data-file>]
+# args: (docker) PROXY|NOPROXY <config-file>
+# args: (kube) PROXY|NOPROXY <config-file> [ <data-file>]
 # (Function for test scripts)
 start_policy_agent() {
        echo -e $BOLD"Starting $POLICY_AGENT_DISPLAY_NAME"$EBOLD
@@ -143,9 +144,15 @@ start_policy_agent() {
                        if [ $1 == "PROXY" ]; then
                                AGENT_HTTP_PROXY_CONFIG_PORT=$HTTP_PROXY_CONFIG_PORT  #Set if proxy is started
                                AGENT_HTTP_PROXY_CONFIG_HOST_NAME=$HTTP_PROXY_CONFIG_HOST_NAME #Set if proxy is started
+                               if [ $AGENT_HTTP_PROXY_CONFIG_PORT -eq 0 ] || [ -z "$AGENT_HTTP_PROXY_CONFIG_HOST_NAME" ]; then
+                                       echo -e $YELLOW" Warning: HTTP PROXY will not be configured, proxy app not started"$EYELLOW
+                               else
+                                       echo " Configured with http proxy"
+                               fi
                        else
                                AGENT_HTTP_PROXY_CONFIG_PORT=0
                                AGENT_HTTP_PROXY_CONFIG_HOST_NAME=""
+                               echo " Configured without http proxy"
                        fi
                        export AGENT_HTTP_PROXY_CONFIG_PORT
                        export AGENT_HTTP_PROXY_CONFIG_HOST_NAME
@@ -225,9 +232,15 @@ start_policy_agent() {
                if [ $1 == "PROXY" ]; then
                        AGENT_HTTP_PROXY_CONFIG_PORT=$HTTP_PROXY_CONFIG_PORT  #Set if proxy is started
                        AGENT_HTTP_PROXY_CONFIG_HOST_NAME=$HTTP_PROXY_CONFIG_HOST_NAME #Set if proxy is started
+                       if [ $AGENT_HTTP_PROXY_CONFIG_PORT -eq 0 ] || [ -z "$AGENT_HTTP_PROXY_CONFIG_HOST_NAME" ]; then
+                               echo -e $YELLOW" Warning: HTTP PROXY will not be configured, proxy app not started"$EYELLOW
+                       else
+                               echo " Configured with http proxy"
+                       fi
                else
                        AGENT_HTTP_PROXY_CONFIG_PORT=0
                        AGENT_HTTP_PROXY_CONFIG_HOST_NAME=""
+                       echo " Configured without http proxy"
                fi
                export AGENT_HTTP_PROXY_CONFIG_PORT
                export AGENT_HTTP_PROXY_CONFIG_HOST_NAME
@@ -819,7 +832,7 @@ api_put_policy_parallel() {
        pids=$1; shift;
 
        #if [ $PA_ADAPTER != $RESTBASE ] && [ $PA_ADAPTER != $RESTBASE_SECURE ]; then
-       if [ $__ADAPTER_TYPE != "REST" ]; then
+       if [ $PA_ADAPTER_TYPE != "REST" ]; then
                echo " Info - api_put_policy_parallel uses only the agent REST interface - create over dmaap in parallel is not supported"
                echo " Info - will execute over agent REST"
        fi
@@ -827,7 +840,7 @@ api_put_policy_parallel() {
                if [ $serv == "NOSERVICE" ]; then
                        serv=""
                fi
-               query="/v2/policies"
+               query="$PMS_API_PREFIX/v2/policies"
        else
                if [ $serv == "NOSERVICE" ]; then
                        serv=""
@@ -1020,13 +1033,13 @@ api_delete_policy_parallel() {
        pids=$1; shift;
 
        #if [ $PA_ADAPTER != $RESTBASE ] && [ $PA_ADAPTER != $RESTBASE_SECURE ]; then
-       if [ $__ADAPTER_TYPE != "REST" ]; then
+       if [ $PA_ADAPTER_TYPE != "REST" ]; then
                echo " Info - api_delete_policy_parallel uses only the agent REST interface - create over dmaap in parallel is not supported"
                echo " Info - will execute over agent REST"
        fi
 
        if [ "$PMS_VERSION" == "V2" ]; then
-               query="/v2/policies/"
+               query="$PMS_API_PREFIX/v2/policies/"
        else
                query="/policy"
        fi
index ba451e6..e9ff1f9 100644 (file)
@@ -88,7 +88,7 @@ use_ecs_dmaap_https() {
 }
 
 # Start the ECS
-# args: -
+# args: PROXY|NOPROXY <config-file>
 # (Function for test scripts)
 start_ecs() {
 
@@ -141,9 +141,25 @@ start_ecs() {
                        export ECS_DATA_CONFIGMAP_NAME=$ECS_APP_NAME"-data"
                        export ECS_CONTAINER_MNT_DIR
 
+                       if [ $1 == "PROXY" ]; then
+                               ECS_HTTP_PROXY_CONFIG_PORT=$HTTP_PROXY_CONFIG_PORT  #Set if proxy is started
+                               ECS_HTTP_PROXY_CONFIG_HOST_NAME=$HTTP_PROXY_CONFIG_HOST_NAME #Set if proxy is started
+                               if [ $ECS_HTTP_PROXY_CONFIG_PORT -eq 0 ] || [ -z "$ECS_HTTP_PROXY_CONFIG_HOST_NAME" ]; then
+                                       echo -e $YELLOW" Warning: HTTP PROXY will not be configured, proxy app not started"$EYELLOW
+                               else
+                                       echo " Configured with http proxy"
+                               fi
+                       else
+                               ECS_HTTP_PROXY_CONFIG_PORT=0
+                               ECS_HTTP_PROXY_CONFIG_HOST_NAME=""
+                               echo " Configured without http proxy"
+                       fi
+                       export ECS_HTTP_PROXY_CONFIG_PORT
+                       export ECS_HTTP_PROXY_CONFIG_HOST_NAME
+
                        # Create config map for config
                        datafile=$PWD/tmp/$ECS_CONFIG_FILE
-                       cp $1 $datafile
+                       cp $2 $datafile
                        output_yaml=$PWD/tmp/ecs_cfc.yaml
                        __kube_create_configmap $ECS_CONFIG_CONFIGMAP_NAME $KUBE_NONRTRIC_NAMESPACE autotest ECS $datafile $output_yaml
 
@@ -193,7 +209,7 @@ start_ecs() {
                cd $SIM_GROUP
                cd ecs
                cd $ECS_HOST_MNT_DIR
-               cd ..
+               #cd ..
                if [ -d db ]; then
                        if [ "$(ls -A $DIR)" ]; then
                                echo -e $BOLD" Cleaning files in mounted dir: $PWD/db"$EBOLD
@@ -212,12 +228,34 @@ start_ecs() {
                export ECS_APP_NAME_ALIAS
                export ECS_HOST_MNT_DIR
                export ECS_CONTAINER_MNT_DIR
+               export ECS_CONFIG_MOUNT_PATH
+               export ECS_CONFIG_FILE
                export ECS_INTERNAL_PORT
                export ECS_EXTERNAL_PORT
                export ECS_INTERNAL_SECURE_PORT
                export ECS_EXTERNAL_SECURE_PORT
                export DOCKER_SIM_NWNAME
 
+               if [ $1 == "PROXY" ]; then
+                       ECS_HTTP_PROXY_CONFIG_PORT=$HTTP_PROXY_CONFIG_PORT  #Set if proxy is started
+                       ECS_HTTP_PROXY_CONFIG_HOST_NAME=$HTTP_PROXY_CONFIG_HOST_NAME #Set if proxy is started
+                       if [ $ECS_HTTP_PROXY_CONFIG_PORT -eq 0 ] || [ -z "$ECS_HTTP_PROXY_CONFIG_HOST_NAME" ]; then
+                               echo -e $YELLOW" Warning: HTTP PROXY will not be configured, proxy app not started"$EYELLOW
+                       else
+                               echo " Configured with http proxy"
+                       fi
+               else
+                       ECS_HTTP_PROXY_CONFIG_PORT=0
+                       ECS_HTTP_PROXY_CONFIG_HOST_NAME=""
+                       echo " Configured without http proxy"
+               fi
+               export ECS_HTTP_PROXY_CONFIG_PORT
+               export ECS_HTTP_PROXY_CONFIG_HOST_NAME
+
+               dest_file=$SIM_GROUP/$ECS_COMPOSE_DIR/$ECS_HOST_MNT_DIR/$ECS_CONFIG_FILE
+
+               envsubst < $2 > $dest_file
+
                __start_container $ECS_COMPOSE_DIR NODOCKERARGS 1 $ECS_APP_NAME
 
                __check_service_start $ECS_APP_NAME $ECS_PATH$ECS_ALIVE_URL
@@ -279,9 +317,9 @@ set_ecs_trace() {
 # Perform curl retries when making direct call to ECS for the specified http response codes
 # Speace separated list of http response codes
 # args: [<response-code>]*
-use_agent_retries() {
+use_ecs_retries() {
        echo -e $BOLD"Do curl retries to the ECS REST inteface for these response codes:$@"$EBOLD
-       ECS_AGENT_RETRY_CODES=$@
+       ECS_RETRY_CODES=$@
        echo ""
        return 0
 }
@@ -1368,7 +1406,7 @@ ecs_api_edp_put_producer_2() {
 }
 
 # API Test function: GET /ei-producer/v1/eiproducers/{eiProducerId}/eijobs
-# args: <response-code> <producer-id> (EMPTY | [<job-id> <type-id> <target-url> <job-owner> <template-job-file>]+)
+# args: (V1-1) <response-code> <producer-id> (EMPTY | [<job-id> <type-id> <target-url> <job-owner> <template-job-file>]+)
 # (Function for test scripts)
 ecs_api_edp_get_producer_jobs() {
        __log_test_start $@
@@ -1431,6 +1469,69 @@ ecs_api_edp_get_producer_jobs() {
        return 0
 }
 
+# API Test function: GET /ei-producer/v1/eiproducers/{eiProducerId}/eijobs
+# args: (V1-2) <response-code> <producer-id> (EMPTY | [<job-id> <type-id> <target-url> <job-owner> <template-job-file>]+)
+# (Function for test scripts)
+ecs_api_edp_get_producer_jobs_2() {
+       __log_test_start $@
+
+       #Valid number of parameter 2,3,7,11
+       paramError=1
+       if [ $# -eq 2 ]; then
+               paramError=0
+       fi
+       if [ $# -eq 3 ] && [ "$3" == "EMPTY" ]; then
+               paramError=0
+       fi
+       variablecount=$(($#-2))
+       if [ $# -gt 3 ] && [ $(($variablecount%5)) -eq 0 ]; then
+               paramError=0
+       fi
+       if [ $paramError -eq 1 ]; then
+               __print_err "<response-code> <producer-id> (EMPTY | [<job-id> <type-id> <target-url> <job-owner> <template-job-file>]+)" $@
+               return 1
+       fi
+
+       query="/ei-producer/v1/eiproducers/$2/eijobs"
+    res="$(__do_curl_to_api ECS GET $query)"
+    status=${res:${#res}-3}
+       if [ $status -ne $1 ]; then
+               __log_test_fail_status_code $1 $status
+               return 1
+       fi
+       if [ $# -gt 2 ]; then
+               body=${res:0:${#res}-3}
+               targetJson="["
+               if [ $# -gt 3 ]; then
+                       arr=(${@:3})
+                       for ((i=0; i<$(($#-3)); i=i+5)); do
+                               if [ "$targetJson" != "[" ]; then
+                                       targetJson=$targetJson","
+                               fi
+                               if [ -f ${arr[$i+4]} ]; then
+                                       jobfile=$(cat ${arr[$i+4]})
+                                       jobfile=$(echo "$jobfile" | sed "s/XXXX/${arr[$i]}/g")
+                               else
+                                       _log_test_fail_general "Job template file "${arr[$i+4]}", does not exist"
+                                       return 1
+                               fi
+                               targetJson=$targetJson"{\"ei_job_identity\":\"${arr[$i]}\",\"ei_type_identity\":\"${arr[$i+1]}\",\"target_uri\":\"${arr[$i+2]}\",\"owner\":\"${arr[$i+3]}\",\"ei_job_data\":$jobfile, \"last_updated\":\"????\"}"
+                       done
+               fi
+               targetJson=$targetJson"]"
+
+               echo " TARGET JSON: $targetJson" >> $HTTPLOG
+               res=$(python3 ../common/compare_json.py "$targetJson" "$body")
+
+               if [ $res -ne 0 ]; then
+                       __log_test_fail_body
+                       return 1
+               fi
+       fi
+
+       __log_test_pass
+       return 0
+}
 
 ##########################################
 ####          Service status          ####
index 4dfe06b..098e58f 100644 (file)
@@ -340,6 +340,32 @@ prodstub_check_jobdata() {
     return $?
 }
 
+# Prodstub API: Get job data for a job and compare with a target job json
+# <response-code> <producer-id> <job-id> <type-id> <target-url> <job-owner> <template-job-file>
+# (Function for test scripts)
+prodstub_check_jobdata_2() {
+       __log_test_start $@
+       if [ $# -ne 7 ]; then
+               __print_err "<response-code> <producer-id> <job-id> <type-id> <target-url> <job-owner> <template-job-file>" $@
+               return 1
+       fi
+    if [ -f $7 ]; then
+        jobfile=$(cat $7)
+        jobfile=$(echo "$jobfile" | sed "s/XXXX/$3/g")
+    else
+        _log_test_fail_general "Template file "$7" for jobdata, does not exist"
+        return 1
+    fi
+    targetJson="{\"ei_job_identity\":\"$3\",\"ei_type_identity\":\"$4\",\"target_uri\":\"$5\",\"owner\":\"$6\", \"ei_job_data\":$jobfile,\"last_updated\":\"????\"}"
+    file="./tmp/.p.json"
+       echo "$targetJson" > $file
+
+    curlString="curl -X GET -skw %{http_code} $PROD_STUB_PATH/jobdata/$2/$3"
+
+    __execute_curl_to_prodstub TEST $1 "$curlString" $file
+    return $?
+}
+
 # Prodstub API: Delete the job data
 # <response-code> <producer-id> <job-id>
 # (Function for test scripts)
index f3c5b51..ba79dc4 100644 (file)
@@ -80,7 +80,7 @@ SDNC_DB_IMAGE_TAG_REMOTE_PROXY="5.6"
 
 # ECS image and tag - uses cherry release
 ECS_IMAGE_BASE="o-ran-sc/nonrtric-enrichment-coordinator-service"
-ECS_IMAGE_TAG_REMOTE_RELEASE_ORAN="1.0.0"
+ECS_IMAGE_TAG_REMOTE_RELEASE_ORAN="1.0.1"
 
 
 # Control Panel image and tag - uses cherry release
@@ -90,7 +90,7 @@ CONTROL_PANEL_IMAGE_TAG_REMOTE_RELEASE_ORAN="2.1.0"
 
 # RAPP Catalogue image and tags - uses cherry release
 RAPP_CAT_IMAGE_BASE="o-ran-sc/nonrtric-r-app-catalogue"
-RAPP_CAT_IMAGE_TAG_REMOTE_RELEASE_ORAN="1.0.0"
+RAPP_CAT_IMAGE_TAG_REMOTE_RELEASE_ORAN="1.0.1"
 
 
 # Near RT RIC Simulator image and tags - uses cherry release
@@ -202,7 +202,7 @@ ECS_INTERNAL_SECURE_PORT=8434                            # ECS container interna
 
 ECS_LOGPATH="/var/log/enrichment-coordinator-service/application.log" # Path the application log in the ECS container
 ECS_APP_NAME_ALIAS="enrichment-service-container"        # Alias name, name used by the control panel
-ECS_HOST_MNT_DIR="./mnt/db"                              # Mounted dir, relative to compose file, on the host
+ECS_HOST_MNT_DIR="./mnt"                                 # Mounted dir, relative to compose file, on the host
 ECS_CONTAINER_MNT_DIR="/var/enrichment-coordinator-service" # Mounted dir in the container
 ECS_ACTUATOR="/actuator/loggers/org.oransc.enrichment"   # Url for trace/debug
 ECS_CERT_MOUNT_DIR="./cert"
index bc20aba..9ee0ebd 100755 (executable)
@@ -60,17 +60,17 @@ NEXUS_RELEASE_REPO_ORAN=$NEXUS_RELEASE_REPO
 
 # Policy Agent base image and tags
 POLICY_AGENT_IMAGE_BASE="o-ran-sc/nonrtric-policy-agent"
-POLICY_AGENT_IMAGE_TAG_LOCAL="2.1.0-SNAPSHOT"
-POLICY_AGENT_IMAGE_TAG_REMOTE_SNAPSHOT="2.1.0-SNAPSHOT"
-POLICY_AGENT_IMAGE_TAG_REMOTE="2.1.0"
-POLICY_AGENT_IMAGE_TAG_REMOTE_RELEASE="2.1.0"
+POLICY_AGENT_IMAGE_TAG_LOCAL="2.1.1-SNAPSHOT"
+POLICY_AGENT_IMAGE_TAG_REMOTE_SNAPSHOT="2.1.1-SNAPSHOT"
+POLICY_AGENT_IMAGE_TAG_REMOTE="2.1.1"
+POLICY_AGENT_IMAGE_TAG_REMOTE_RELEASE="2.1.1"
 
 # ECS image and tags
 ECS_IMAGE_BASE="o-ran-sc/nonrtric-enrichment-coordinator-service"
-ECS_IMAGE_TAG_LOCAL="1.0.0-SNAPSHOT"
-ECS_IMAGE_TAG_REMOTE_SNAPSHOT="1.0.0-SNAPSHOT"
-ECS_IMAGE_TAG_REMOTE="1.0.0"
-ECS_IMAGE_TAG_REMOTE_RELEASE="1.0.0"
+ECS_IMAGE_TAG_LOCAL="1.0.1-SNAPSHOT"
+ECS_IMAGE_TAG_REMOTE_SNAPSHOT="1.0.1-SNAPSHOT"
+ECS_IMAGE_TAG_REMOTE="1.0.1"
+ECS_IMAGE_TAG_REMOTE_RELEASE="1.0.1"
 
 
 # Control Panel image and tags
@@ -97,10 +97,10 @@ SDNC_DB_IMAGE_TAG_REMOTE_PROXY="5.6"
 
 # RAPP Catalogue image and tags
 RAPP_CAT_IMAGE_BASE="o-ran-sc/nonrtric-r-app-catalogue"
-RAPP_CAT_IMAGE_TAG_LOCAL="1.0.0-SNAPSHOT"
-RAPP_CAT_IMAGE_TAG_REMOTE_SNAPSHOT="1.0.0-SNAPSHOT"
-RAPP_CAT_IMAGE_TAG_REMOTE="1.0.0"
-RAPP_CAT_IMAGE_TAG_REMOTE_RELEASE="1.0.0"
+RAPP_CAT_IMAGE_TAG_LOCAL="1.0.1-SNAPSHOT"
+RAPP_CAT_IMAGE_TAG_REMOTE_SNAPSHOT="1.0.1-SNAPSHOT"
+RAPP_CAT_IMAGE_TAG_REMOTE="1.0.1"
+RAPP_CAT_IMAGE_TAG_REMOTE_RELEASE="1.0.1"
 
 
 # Near RT RIC Simulator image and tags
@@ -212,7 +212,7 @@ ECS_INTERNAL_SECURE_PORT=8434                            # ECS container interna
 
 ECS_LOGPATH="/var/log/enrichment-coordinator-service/application.log" # Path the application log in the ECS container
 ECS_APP_NAME_ALIAS="enrichment-service-container"        # Alias name, name used by the control panel
-ECS_HOST_MNT_DIR="./mnt/db"                              # Mounted dir, relative to compose file, on the host
+ECS_HOST_MNT_DIR="./mnt"                                 # Mounted dir, relative to compose file, on the host
 ECS_CONTAINER_MNT_DIR="/var/enrichment-coordinator-service" # Mounted dir in the container
 ECS_ACTUATOR="/actuator/loggers/org.oransc.enrichment"   # Url for trace/debug
 ECS_CERT_MOUNT_DIR="./cert"
index 8943ffd..f3baa03 100755 (executable)
@@ -73,12 +73,23 @@ ECS_IMAGE_TAG_REMOTE="1.1.0"
 ECS_IMAGE_TAG_REMOTE_RELEASE="1.1.0"
 
 
+# Control Panel image and tags
+# CONTROL_PANEL_IMAGE_BASE="o-ran-sc/nonrtric-controlpanel"
+# CONTROL_PANEL_IMAGE_TAG_LOCAL="2.2.0-SNAPSHOT"
+# CONTROL_PANEL_IMAGE_TAG_REMOTE_SNAPSHOT="2.2.0-SNAPSHOT"
+# CONTROL_PANEL_IMAGE_TAG_REMOTE="2.2.0"
+# CONTROL_PANEL_IMAGE_TAG_REMOTE_RELEASE="2.2.0"
+
+
+###########################################################
+##### Temporarily using cherry as dawn version is corrupted
+###########################################################
 # Control Panel image and tags
 CONTROL_PANEL_IMAGE_BASE="o-ran-sc/nonrtric-controlpanel"
-CONTROL_PANEL_IMAGE_TAG_LOCAL="2.2.0-SNAPSHOT"
-CONTROL_PANEL_IMAGE_TAG_REMOTE_SNAPSHOT="2.2.0-SNAPSHOT"
-CONTROL_PANEL_IMAGE_TAG_REMOTE="2.2.0"
-CONTROL_PANEL_IMAGE_TAG_REMOTE_RELEASE="2.2.0"
+CONTROL_PANEL_IMAGE_TAG_LOCAL="2.1.0-SNAPSHOT"
+CONTROL_PANEL_IMAGE_TAG_REMOTE_SNAPSHOT="2.1.0-SNAPSHOT"
+CONTROL_PANEL_IMAGE_TAG_REMOTE="2.1.0"
+CONTROL_PANEL_IMAGE_TAG_REMOTE_RELEASE="2.1.0"
 
 
 # SDNC A1 Controller image and tags - still using cherry version, no new version for dawn
@@ -193,7 +204,7 @@ POLICY_AGENT_EXTERNAL_SECURE_PORT=8433                   # Policy Agent containe
 POLICY_AGENT_INTERNAL_SECURE_PORT=8433                   # Policy Agent container internal secure port (container -> container)
 POLICY_AGENT_APIS="V1 V2"                                # Supported northbound api versions
 PMS_VERSION="V2"                                         # Tested version of northbound API
-PMS_API_PREFIX=""                                        # api url prefix, only for V2
+PMS_API_PREFIX="/a1-policy"                              # api url prefix, only for V2
 
 POLICY_AGENT_APP_NAME="policymanagementservice"          # Name for Policy Agent container
 POLICY_AGENT_DISPLAY_NAME="Policy Management Service"
@@ -203,7 +214,7 @@ POLICY_AGENT_APP_NAME_ALIAS="policy-agent-container"     # Alias name, name used
 POLICY_AGENT_CONFIG_KEY="policy-agent"                   # Key for consul config
 POLICY_AGENT_PKG_NAME="org.oransc.policyagent"           # Java base package name
 POLICY_AGENT_ACTUATOR="/actuator/loggers/$POLICY_AGENT_PKG_NAME" # Url for trace/debug
-POLICY_AGENT_ALIVE_URL=$PMS_API_PREFIX"/v2/status"       # Base path for alive check
+POLICY_AGENT_ALIVE_URL="$PMS_API_PREFIX/v2/status"       # Base path for alive check
 POLICY_AGENT_COMPOSE_DIR="policy_agent"                  # Dir in simulator_group for docker-compose
 POLICY_AGENT_CONFIG_MOUNT_PATH="/opt/app/policy-agent/config" # Path in container for config file
 POLICY_AGENT_DATA_MOUNT_PATH="/opt/app/policy-agent/data" # Path in container for data file
@@ -219,7 +230,7 @@ ECS_INTERNAL_SECURE_PORT=8434                            # ECS container interna
 
 ECS_LOGPATH="/var/log/enrichment-coordinator-service/application.log" # Path the application log in the ECS container
 ECS_APP_NAME_ALIAS="enrichment-service-container"        # Alias name, name used by the control panel
-ECS_HOST_MNT_DIR="./mnt/db"                              # Mounted dir, relative to compose file, on the host
+ECS_HOST_MNT_DIR="./mnt"                                 # Mounted db dir, relative to compose file, on the host
 ECS_CONTAINER_MNT_DIR="/var/enrichment-coordinator-service" # Mounted dir in the container
 ECS_ACTUATOR="/actuator/loggers/org.oransc.enrichment"   # Url for trace/debug
 ECS_CERT_MOUNT_DIR="./cert"
@@ -322,9 +333,9 @@ SDNC_KARAF_LOG="/opt/opendaylight/data/log/karaf.log"    # Path to karaf log
 RAPP_CAT_APP_NAME="rappcatalogueservice"                 # Name for the RAPP Catalogue
 RAPP_CAT_DISPLAY_NAME="RAPP Catalogue"
 RAPP_CAT_EXTERNAL_PORT=8680                              # RAPP Catalogue container external port (host -> container)
-RAPP_CAT_INTERNAL_PORT=8080                              # RAPP Catalogue container internal port (container -> container)
+RAPP_CAT_INTERNAL_PORT=8680                              # RAPP Catalogue container internal port (container -> container)
 RAPP_CAT_EXTERNAL_SECURE_PORT=8633                       # RAPP Catalogue container external secure port (host -> container)
-RAPP_CAT_INTERNAL_SECURE_PORT=8433                       # RAPP Catalogue container internal secure port (container -> container)
+RAPP_CAT_INTERNAL_SECURE_PORT=8633                       # RAPP Catalogue container internal secure port (container -> container)
 RAPP_CAT_ALIVE_URL="/services"                           # Base path for alive check
 RAPP_CAT_COMPOSE_DIR="rapp_catalogue"                    # Dir in simulator_group for docker-compose
 
index fa42c20..9e04d57 100644 (file)
@@ -23,6 +23,7 @@ from datetime import datetime
 import json
 import traceback
 import logging
+import socket
 
 # Disable all logging of GET on reading counters and db
 class AjaxFilter(logging.Filter):
@@ -58,6 +59,23 @@ CAUGHT_EXCEPTION="Caught exception: "
 SERVER_ERROR="Server error :"
 TIME_STAMP="cr-timestamp"
 
+# Remote host lookup and print host name
+def remote_host_logging(request):
+
+    if request.environ.get('HTTP_X_FORWARDED_FOR') is None:
+        host_ip=str(request.environ['REMOTE_ADDR'])
+    else:
+        host_ip=str(request.environ['HTTP_X_FORWARDED_FOR'])
+    prefix='::ffff:'
+    if (host_ip.startswith('::ffff:')):
+        host_ip=host_ip[len(prefix):]
+    try:
+        name, alias, addresslist = socket.gethostbyaddr(host_ip)
+        print("Calling host: "+str(name))
+    except Exception:
+        print("Calling host not possible to retrieve IP: "+str(host_ip))
+
+
 #I'm alive function
 @app.route('/',
     methods=['GET'])
@@ -131,6 +149,7 @@ def events_write(id):
 
     try:
         print("Received callback for id: "+id +", content-type="+request.content_type)
+        remote_host_logging(request)
         try:
             if (request.content_type == MIME_JSON):
                 data = request.data
index 479d896..e1b9ff9 100644 (file)
@@ -39,7 +39,10 @@ http {
 
         # serve dynamic requests
         location / {
-        proxy_pass      http://localhost:2222;
+           proxy_set_header   Host                 $host;
+           proxy_set_header   X-Real-IP            $remote_addr;
+           proxy_set_header   X-Forwarded-For      $proxy_add_x_forwarded_for;
+           proxy_pass      http://localhost:2222;
         }
     }
     ##
index 75b11ad..acc914c 100644 (file)
@@ -51,4 +51,6 @@ app:
     trust-store-used: false
     trust-store-password: policy_agent
     trust-store: /opt/app/enrichment-coordinator-service/etc/cert/truststore.jks
+    http.proxy-host: $ECS_HTTP_PROXY_CONFIG_HOST_NAME
+    http.proxy-port: $ECS_HTTP_PROXY_CONFIG_PORT
   vardata-directory: /var/enrichment-coordinator-service
\ No newline at end of file
index 824156e..b74252a 100644 (file)
@@ -27,7 +27,8 @@ services:
         aliases:
           - ${ECS_APP_NAME_ALIAS}
     volumes:
-    - ${ECS_HOST_MNT_DIR}:${ECS_CONTAINER_MNT_DIR}
+    - ${ECS_HOST_MNT_DIR}/db:${ECS_CONTAINER_MNT_DIR}
+    - ${ECS_HOST_MNT_DIR}/$ECS_CONFIG_FILE:${ECS_CONFIG_MOUNT_PATH}/$ECS_CONFIG_FILE
     ports:
     - ${ECS_EXTERNAL_PORT}:${ECS_INTERNAL_PORT}
     - ${ECS_EXTERNAL_SECURE_PORT}:${ECS_INTERNAL_SECURE_PORT}
diff --git a/test/simulator-group/policy_agent/mnt/application.yaml b/test/simulator-group/policy_agent/mnt/application.yaml
deleted file mode 100644 (file)
index 30ec4de..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-################################################################################
-#   Copyright (c) 2020 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.                                             #
-################################################################################
-
-spring:
-  profiles:
-    active: prod
-  main:
-    allow-bean-definition-overriding: true
-  aop:
-    auto: false
-management:
-  endpoints:
-    web:
-      exposure:
-        # Enabling of springboot actuator features. See springboot documentation.
-        include: "loggers,logfile,health,info,metrics,threaddump,heapdump"
-
-logging:
-  # Configuration of logging
-  level:
-    ROOT: ERROR
-    org.springframework: ERROR
-    org.springframework.data: ERROR
-    org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
-    org.onap.ccsdk.oran.a1policymanagementservice: INFO
-  file: /var/log/policy-agent/application.log
-
-server:
-  # Configuration of the HTTP/REST server. The parameters are defined and handeled by the springboot framework.
-  # See springboot documentation.
-  port : 8433
-  http-port: 8081
-  ssl:
-    key-store-type: JKS
-    key-store-password: policy_agent
-    key-store: /opt/app/policy-agent/etc/cert/keystore.jks
-    key-password: policy_agent
-    key-alias: policy_agent
-app:
-  # Location of the component configuration file. The file will only be used if the Consul database is not used;
-  # configuration from the Consul will override the file.
-  filepath: /opt/app/policy-agent/data/application_configuration.json
-  webclient:
-    # Configuration of the trust store used for the HTTP client (outgoing requests)
-    # The file location and the password for the truststore is only relevant if trust-store-used == true
-    # Note that the same keystore as for the server is used.
-    trust-store-used: false
-    trust-store-password: policy_agent
-    trust-store: /opt/app/policy-agent/etc/cert/truststore.jks
-    # Configuration of usage of HTTP Proxy for the southbound accesses.
-    # The HTTP proxy (if configured) will only be used for accessing NearRT RIC:s
-    http.proxy-host: 
-    http.proxy-port: 0
index 56a6e6d..aabc7d7 100644 (file)
@@ -941,14 +941,14 @@ app.get("/mon",function(req, res){
           "<html>" +
           "<head>" +
             "<meta http-equiv=\"refresh\" content=\"2\">"+  //2 sec auto refresh
-            "<title>Policy Agent and simulator monitor</title>"+
+            "<title>Policy Management Service and simulator monitor</title>"+
             "</head>" +
             "<body>" +
             "<font size=\"-3\" face=\"monospace\">" +
             "<p>Change basename in url if other ric sim prefix is used</p>" +
             "<p>Change pmsprefix in url if pms with other prefix is used</p>" +
             "</font>" +
-            "<h3>Policy agent</h3>" +
+            "<h3>Policy Management Service</h3>" +
             "<font face=\"monospace\">" +
             "Status:..............................." + formatDataRow(ag1) + "<br>" +
             "Services:............................." + formatIdRowCompact(ag2) + "<br>" +
@@ -965,7 +965,7 @@ app.get("/mon",function(req, res){
             "Fetched responses.............................." + formatDataRow(mr5) + "<br>" +
             "Current responses waiting......................" + formatDataRow(mr6) + "<br>" +
             "</font>"+
-            "<h3>Callback receiver</h3>" +
+            "<h3>Callback|Notification receiver</h3>" +
             "<font face=\"monospace\">" +
             "Callbacks received:..................." + formatDataRow(cr1) + "<br>" +
             "Callbacks fetched:...................." + formatDataRow(cr2) + "<br>" +
@@ -975,7 +975,7 @@ app.get("/mon",function(req, res){
             "<font face=\"monospace\">" +
             "Services:............................." + formatIdRowCompact(rc_services) + "<br>" +
             "</font>" +
-            "<h3>Near-RT RIC Simulators</h3>" +
+            "<h3>Near-RT RIC | A1 Simulators</h3>" +
             "<font face=\"monospace\">"
 
             htmlStr=htmlStr+padding("Near-RT RIC Simulator name", 35,"&nbsp;")