X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=near-rt-ric-simulator%2Ftest%2FSTD_2.0.0%2Fbuild_and_start_with_kafka.sh;fp=near-rt-ric-simulator%2Ftest%2FSTD_2.0.0%2Fbuild_and_start_with_kafka.sh;h=c017513374d1c85f6885e202cf8a9f6dccd4fe36;hb=1ef05f94c2b4cc34f4b4b7e891b41548ad9bf446;hp=0000000000000000000000000000000000000000;hpb=30f41fcbaa50eef322aa47efe8346b432b96b578;p=sim%2Fa1-interface.git diff --git a/near-rt-ric-simulator/test/STD_2.0.0/build_and_start_with_kafka.sh b/near-rt-ric-simulator/test/STD_2.0.0/build_and_start_with_kafka.sh new file mode 100755 index 0000000..c017513 --- /dev/null +++ b/near-rt-ric-simulator/test/STD_2.0.0/build_and_start_with_kafka.sh @@ -0,0 +1,96 @@ +#!/bin/bash + +# ============LICENSE_START=============================================== +# Copyright (C) 2022 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================================================= +# + +# Script to build and start the container +# Make sure to run the simulator with the same arg as this script + +print_usage() { + echo "Usage: ./build_and_start.sh duplicate-check|ignore-duplicate kafka-srv|kafka-srv-secure|ignore-kafka-srv" + exit 1 +} + +if [ $# -ne 2 ]; then + print_usage +fi + +if [ $1 == "duplicate-check" ]; then + DUP_CHECK=1 +elif [ $1 == "ignore-duplicate" ]; then + DUP_CHECK=0 +else + print_usage +fi + +if [ $2 == "kafka-srv" ]; then + URL="http://localhost:7075" +elif [ $2 == "kafka-srv-secure" ]; then + URL="https://localhost:7175" +elif [ $2 == "ignore-kafka-srv" ]; then + URL="" +else + print_usage +fi + +URL_FLAG="" +if [ ! -z "$URL" ]; then + URL_FLAG="-e KAFKA_DISPATCHER_URL=$URL" +fi + +# Stop and remove container images if they run + +echo "Stopping A1 simulator image..." +docker stop a1StdSimulator > /dev/null 2>&1 +docker rm -f a1StdSimulator > /dev/null 2>&1 + +echo "Stopping kafka dispatcher server image..." +docker stop kafkamessagedispatcher > /dev/null 2>&1 +docker rm -f kafkamessagedispatcher > /dev/null 2>&1 + +# Initialize path variables for certificate and build operations + +dirstd2=$PWD + +cd ../../ +dirnrtsim=$PWD + +cd test/KAFKA_DISPATCHER/ +dirkafkasrv=$PWD + +# Build containers + +cd $dirnrtsim +echo "Building A1 simulator image..." +docker build -t a1test . + +if [ ! -z "$URL" ]; then + cd $dirkafkasrv + echo "Building kafka server image..." + docker build -t kafka_dispatcher . +fi + +# Run containers + +# Runs kafka server in detached mode +# In order to tail logs use:: docker logs -f kafkamessagedispatcher +if [ ! -z "$URL" ]; then + docker run -d --network host --rm -it -p 7075:7075 -p 7175:7175 -e ALLOW_HTTP=true -e MSG_BROKER_URL=localhost:9092 -e KAFKA_TOPIC_RES=kafkatopicres -e TIME_OUT=30000 --volume "$dirkafkasrv/certificate:/usr/src/app/cert" --name kafkamessagedispatcher kafka_dispatcher +fi + +# Runs A1 simulator +docker run --network host --rm -it -p 8085:8085 -p 8185:8185 -e A1_VERSION=STD_2.0.0 -e ALLOW_HTTP=true -e REMOTE_HOSTS_LOGGING=1 -e DUPLICATE_CHECK=$DUP_CHECK $URL_FLAG --volume "$dirnrtsim/certificate:/usr/src/app/cert" --name a1StdSimulator a1test