ROP file processing in mass-pnf-simulator

Change-Id: I66203ff66e9d91865f8eee06bef01e55bcd6c39c
Issue-ID: DCAEGEN2-1225
Signed-off-by: TamasBakai <tamas.bakai@est.tech>
diff --git a/test/mocks/mass-pnf-sim/pnf-sim-lightweight/simulator.sh b/test/mocks/mass-pnf-sim/pnf-sim-lightweight/simulator.sh
index 12b2047..4fb725f 100755
--- a/test/mocks/mass-pnf-sim/pnf-sim-lightweight/simulator.sh
+++ b/test/mocks/mass-pnf-sim/pnf-sim-lightweight/simulator.sh
@@ -6,9 +6,12 @@
 NETOPEER_CONTAINER_NAME=netopeer
 SIMULATOR_CONTAINER_NAME=pnf-simulator
 SIMULATOR_PORT=5000
-SIMULATOR_START_URL=http://localhost:$SIMULATOR_PORT/simulator/start
-SIMULATOR_STOP_URL=http://localhost:$SIMULATOR_PORT/simulator/stop
-SIMULATOR_STATUS_URL=http://localhost:$SIMULATOR_PORT/simulator/status
+
+SIMULATOR_BASE=http://localhost:$SIMULATOR_PORT/simulator/
+SIMULATOR_START_URL=$SIMULATOR_BASE/start
+SIMULATOR_STOP_URL=$SIMULATOR_BASE/stop
+SIMULATOR_STATUS_URL=$SIMULATOR_BASE/status
+
 RUNNING_COMPOSE_CONFIG=$COMPOSE_FILE_NAME
 
 function main(){
@@ -27,6 +30,8 @@
             stop;;
         "run-simulator")
             run_simulator;;
+        "trigger-simulator")
+            trigger_simulator;;
         "stop-simulator")
             stop_simulator;;
         "status")
@@ -38,6 +43,18 @@
     esac
 }
 
+
+function get_pnfsim_ip() {
+
+	export IPPNFSIM=$(cat ./config/config.yml | grep ippnfsim | awk -F'[ ]' '{print $2}')
+	echo "PNF-Sim IP: " $IPPNFSIM
+	
+	export SIMULATOR_BASE=http://$IPPNFSIM:$SIMULATOR_PORT/simulator/
+	export SIMULATOR_START_URL=$SIMULATOR_BASE/start
+	export SIMULATOR_STOP_URL=$SIMULATOR_BASE/stop
+	export SIMULATOR_STATUS_URL=$SIMULATOR_BASE/status
+}
+
 function compose(){
 	#creating custom docker-compose based on IP arguments
 	#creting config.json by injecting the same IP
@@ -63,13 +80,13 @@
 
 	set_vsftpd_file_owner
 
-	write_config $IPVES $IPFTPS $IPSFTP
+	write_config $IPVES $IPFTPS $IPSFTP $IPPNFSIM
 
 }
 
 function build_image(){
     if [ -f pom.xml ]; then
-        mvn clean package docker:build
+        mvn clean package docker:build -Dcheckstyle.skip -DskipTests
     else
         echo "pom.xml file not found"
         exit 1
@@ -83,15 +100,15 @@
 
 function write_config(){
 	#building a YML file for usage in Java
-	echo "---" > config/config.yml
-	echo "configuration:" >> config/config.yml
-	echo "  vesip: $1" >> config/config.yml
-	echo "  ipftps: $2" >> config/config.yml
-	echo "  ipsftp: $3" >> config/config.yml
+	echo "vesip: $1" > config/config.yml
+	echo "ipftps: $2" >> config/config.yml
+	echo "ipsftp: $3" >> config/config.yml
+	echo "ippnfsim: $4" >> config/config.yml
 }
 
 function start(){
 
+	get_pnfsim_ip
     if [[ $(running_containers) ]]; then
         echo "Simulator containers are already up"
     else
@@ -108,7 +125,7 @@
 }
 
 function stop(){
-
+	get_pnfsim_ip
     if [[ $(running_containers) ]]; then
         docker-compose -f $RUNNING_COMPOSE_CONFIG down
         docker-compose -f $RUNNING_COMPOSE_CONFIG rm
@@ -117,8 +134,16 @@
     fi
 }
 
-function run_simulator(){
+function trigger_simulator(){
+get_pnfsim_ip
+cat << EndOfMessage
+Simulator response:
+$(curl -s -X POST -H "Content-Type: application/json" -H "X-ONAP-RequestID: 123" -H "X-InvocationID: 456" -d @config/config.json $SIMULATOR_START_URL)
+EndOfMessage
+}
 
+function run_simulator(){
+get_pnfsim_ip
 cat << EndOfMessage
 Simulator response:
 $(curl -s -X POST -H "Content-Type: application/json" -H "X-ONAP-RequestID: 123" -H "X-InvocationID: 456" -d @config/$CONFIG_JSON $SIMULATOR_START_URL)
@@ -126,6 +151,7 @@
 }
 
 function stop_simulator(){
+get_pnfsim_ip
 cat << EndOfMessage
 Simulator response:
 $(curl -s -X POST $SIMULATOR_STOP_URL)
@@ -133,7 +159,7 @@
 }
 
 function get_status(){
-
+	get_pnfsim_ip
     if [[ $(running_containers) ]]; then
         print_status
     else
@@ -142,6 +168,7 @@
 }
 
 function print_status(){
+get_pnfsim_ip
 cat << EndOfMessage
 $(docker-compose -f $RUNNING_COMPOSE_CONFIG ps)
 
@@ -156,6 +183,7 @@
 build - locally builds simulator image from existing code
 start - starts simulator and netopeer2 containers using remote simulator image and specified model name
 compose - customize the docker-compose and configuration based on arguments
+trigger-simulator - start monitoring the ROP files and report periodically
 run-simulator - starts sending PNF registration messages with parameters specified in config.json
 stop-simulator - stop sending PNF registration messages
 stop - stops both containers