X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=near-rt-ric-simulator%2Fcommon%2Ftestcase_common.sh;h=d9a012ea66e7cc0fdf1d985b9fa083a5601bb926;hb=063e00d7a9f1f56c8b0714602fcaecb3c4eac951;hp=6f2097e9ebebaf723966d06081f5a36650878019;hpb=84ccd9a7a490f524d950852b9f37f9befec8fd75;p=nonrtric.git diff --git a/near-rt-ric-simulator/common/testcase_common.sh b/near-rt-ric-simulator/common/testcase_common.sh index 6f2097e9..d9a012ea 100755 --- a/near-rt-ric-simulator/common/testcase_common.sh +++ b/near-rt-ric-simulator/common/testcase_common.sh @@ -3,13 +3,19 @@ . ../common/test_env.sh echo "Test case started as: ${BASH_SOURCE[$i+1]} "$1 $2 +echo "Numbers of ric simulator started" $2 + +# This is a script that contains all the functions needed for auto test +# Arg: local | remote (1, 2, 3, 4....) STARTED_POLICY_AGENT="" #Policy agent app names added to this var to keep track of started container in the script START_ARG=$1 IMAGE_TAG="1.0.0-SNAPSHOT" +IMAGE_TAG_REMOTE="latest" +RIC_NUMBER=$2 if [ $# -lt 1 ] || [ $# -gt 2 ]; then - echo "Expected arg: local [] ]| remote [] ]| remote-remove []] | manual-container | manual-app" + echo "Expected arg: local | remote and numbers of the rics " exit 1 elif [ $1 == "local" ]; then if [ -z $POLICY_AGENT_LOCAL_IMAGE ]; then @@ -17,6 +23,12 @@ elif [ $1 == "local" ]; then exit 1 fi POLICY_AGENT_IMAGE=$POLICY_AGENT_LOCAL_IMAGE":"$IMAGE_TAG +elif [ $1 == "remote" ]; then + if [ -z $POLICY_AGENT_REMOTE_IMAGE ]; then + echo "POLICY_AGENT_REMOTE_IMAGE not set in test_env" + exit 1 + fi + POLICY_AGENT_IMAGE=$POLICY_AGENT_REMOTE_IMAGE":"$IMAGE_TAG_REMOTE fi # Set a description string for the test case @@ -72,21 +84,51 @@ fi echo "" if [ $1 != "manual-container" ] && [ $1 != "manual-app" ]; then - echo -e "Policy agent image tag set to: \033[1m" $IMAGE_TAG"\033[0m" - echo "Configured image for policy agent app(s) (${1}): "$POLICY_AGENT_LOCAL_IMAGE - tmp_im=$(docker images ${POLICY_AGENT_LOCAL_IMAGE} | grep -v REPOSITORY) + #echo -e "Policy agent image tag set to: \033[1m" $IMAGE_TAG"\033[0m" + echo "Configured image for policy agent app(s) (${1}): "$POLICY_AGENT_IMAGE + tmp_im=$(docker images ${POLICY_AGENT_IMAGE} | grep -v REPOSITORY) if [ $1 == "local" ]; then if [ -z "$tmp_im" ]; then - echo "Local image (non nexus) "$POLICY_AGENT_LOCAL_IMAGE" does not exist in local registry, need to be built" + echo "Local image (non nexus) "$POLICY_AGENT_IMAGE" does not exist in local registry, need to be built" exit 1 else echo -e "Policy agent local image: \033[1m"$tmp_im"\033[0m" - echo "If the policy agen image seem outdated, rebuild the image and run the test again." + echo "If the policy agent image seem outdated, rebuild the image and run the test again." + fi + elif [ $1 == "remote" ]; then + if [ -z "$tmp_im" ]; then + echo "Pulling policy agent image from nexus: "$POLICY_AGENT_IMAGE + docker pull $POLICY_AGENT_IMAGE > /dev/null + tmp_im=$(docker images ${POLICY_AGENT_IMAGE} | grep -v REPOSITORY) + if [ -z "$tmp_im" ]; then + echo "Image could not be pulled" + exit 1 + fi + echo -e "Policy Agent image: \033[1m"$tmp_im"\033[0m" + else + echo -e "Policy Agent image: \033[1m"$tmp_im"\033[0m" + echo "!! If the Policy agent image seem outdated, consider removing it from your docker registry and run the test again." fi fi fi +echo "" + +echo "Building images for the simulators" +curdir=$PWD +cd $SIM_GROUP +cd ../ric-plt/a1 +docker build -t ric-simulator:latest . &> /dev/null +cd $curdir + +echo "" + +echo "Local registry images for simulators:" +echo "Consul: " $(docker images | grep consul) +echo "CBS: " $(docker images | grep platform.configbinding.app) +echo "RIC: " $(docker images | grep ric-simulator) +echo "" __consul_config() { @@ -104,12 +146,48 @@ consul_config_app() { } + + +start_ric_simulator() { + + DOCKER_SIM_NWNAME="nonrtric-docker-net" + echo "Creating docker network $DOCKER_SIM_NWNAME, if needed" + docker network ls| grep $DOCKER_SIM_NWNAME > /dev/null || docker network create $DOCKER_SIM_NWNAME + + echo "start ric simulator" + curdir=$PWD + cd $SIM_GROUP + cd ric/ + + docker-compose up --scale ric-simulator=$RIC_NUMBER -d + + cd $curdir + echo "" +} + +prepare_consul_config() { + echo "prepare consul config" + curdir=$PWD + cd $SIM_GROUP + cd ric/ + + python3 cleanConsul.py + python3 prepareConsul.py + + cd $curdir + echo "" + + +} + + # Start all simulators in the simulator group start_simulators() { echo "Starting all simulators" curdir=$PWD cd $SIM_GROUP + $SIM_GROUP/simulators-start.sh cd $curdir echo "" @@ -120,6 +198,10 @@ clean_containers() { docker stop $(docker ps -q --filter name=/policy-agent) &> /dev/null echo "Removing all containers, policy agent app and simulators with name prefix 'policy_agent'" docker rm $(docker ps -a -q --filter name=/policy-agent) &> /dev/null + echo "Stopping all containers, policy agent app(s) and simulators with name prefix 'ric-simulator'" + docker stop $(docker ps -q --filter name=ric-simulator) &> /dev/null + echo "Removing all containers, policy agent app and simulators with name prefix 'ric-simulator'" + docker rm $(docker ps -a -q --filter name=ric-simulator) &> /dev/null echo "Removing unused docker networks with substring 'policy agent' in network name" docker network rm $(docker network ls -q --filter name=nonrtric) echo "" @@ -129,7 +211,7 @@ start_policy_agent() { appname=$PA_APP_BASE - if [ $START_ARG == "local" ] ; then + if [ $START_ARG == "local" ] || [ $START_ARG == "remote" ]; then __start_policy_agent_image $appname fi } @@ -171,6 +253,7 @@ __start_policy_agent_image() { result="$(__do_curl http://127.0.0.1:${localport}/status)" if [ $? -eq 0 ]; then echo "Policy Agent ${appname} responds to service status: " $result + echo "Policy Agent is alive." pa_st=true break else