82 lines
2.5 KiB
Bash
Executable File
82 lines
2.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
. ../jenkins-common.sh
|
|
|
|
IMAGE_SUFFIX="${IMAGE_SUFFIX:-master}"
|
|
docker_images_require \
|
|
"open5gs-$IMAGE_SUFFIX" \
|
|
"ttcn3-hss-test-ogs"
|
|
|
|
set_clean_up_trap
|
|
set -e
|
|
|
|
mkdir -p $VOL_BASE_DIR/mongo/db
|
|
cp ogs/mongod.conf $VOL_BASE_DIR/mongo/
|
|
|
|
mkdir $VOL_BASE_DIR/hss-tester
|
|
cp ogs/HSS_Tests.cfg $VOL_BASE_DIR/hss-tester/
|
|
write_mp_osmo_repo "$VOL_BASE_DIR/hss-tester/HSS_Tests.cfg"
|
|
|
|
mkdir $VOL_BASE_DIR/hss
|
|
cp ogs/open5gs-*-$IMAGE_SUFFIX.yaml $VOL_BASE_DIR/hss/
|
|
cp ogs/freediameter.conf $VOL_BASE_DIR/hss/
|
|
|
|
network_create
|
|
network_replace_subnet_in_configs
|
|
|
|
MONGOD_ADDR="172.18.$SUBNET.103"
|
|
DBCTL="open5gs-dbctl --db_uri=mongodb://$MONGOD_ADDR/open5gs"
|
|
|
|
# start container with mongod in background
|
|
docker run --rm --user $(id -u) \
|
|
$(docker_network_params $SUBNET 103) \
|
|
--ulimit core=-1 \
|
|
-v $VOL_BASE_DIR/mongo:/data \
|
|
--name ${BUILD_TAG}-mongo -d \
|
|
$DOCKER_ARGS \
|
|
$REPO_USER/open5gs-$IMAGE_SUFFIX \
|
|
/bin/sh -c "mongod -f /data/mongod.conf >/data/mongod.out 2>&1"
|
|
|
|
# mongod needs some time to bootstrap...
|
|
while ! nc -z $MONGOD_ADDR 27017; do sleep 1; done
|
|
|
|
# create a test subscriber with IMSI=001010000000000
|
|
docker run --rm \
|
|
$(docker_network_params $SUBNET 8) \
|
|
$REPO_USER/open5gs-$IMAGE_SUFFIX \
|
|
$DBCTL add 001010000000000 3c6e0b8a9c15224a8228b9a98ca1531d 762a2206fe0b4151ace403c86a11e479
|
|
|
|
# Mark test subscriber with IMSI=001010000000001 as:
|
|
# Subscriber-Status=OPERATOR_DETERMINED_BARRING (1)
|
|
# Operator-Determined-Barring="Barring of all outgoing inter-zonal calls except those directed to the home PLMN country" (7)
|
|
docker run --rm \
|
|
$(docker_network_params $SUBNET 8) \
|
|
$REPO_USER/open5gs-$IMAGE_SUFFIX \
|
|
/bin/sh -c "$DBCTL add 001010000000001 3c6e0b8a9c15224a8228b9a98ca1531d 762a2206fe0b4151ace403c86a11e479 &&
|
|
$DBCTL subscriber_status 001010000000001 1 7"
|
|
|
|
# start container with hss in background
|
|
docker run --sysctl net.ipv6.conf.all.disable_ipv6=0 \
|
|
--rm \
|
|
--ulimit core=-1 \
|
|
-v $VOL_BASE_DIR/hss:/data \
|
|
--name ${BUILD_TAG}-ogs-hss -d \
|
|
$DOCKER_ARGS \
|
|
$(docker_network_params $SUBNET 201) \
|
|
$REPO_USER/open5gs-$IMAGE_SUFFIX \
|
|
/bin/sh -c "open5gs-hssd -c /data/open5gs-hss-$IMAGE_SUFFIX.yaml >/data/open5gs-hssd.out 2>&1"
|
|
|
|
# start docker container with testsuite in foreground
|
|
docker run --rm \
|
|
--sysctl net.ipv6.conf.all.disable_ipv6=0 \
|
|
$(docker_network_params $SUBNET 202) \
|
|
--ulimit core=-1 \
|
|
-v $VOL_BASE_DIR/hss-tester:/data \
|
|
-e "TTCN3_PCAP_PATH=/data" \
|
|
--name ${BUILD_TAG}-hss-test \
|
|
$DOCKER_ARGS \
|
|
$REPO_USER/ttcn3-hss-test-ogs
|
|
|
|
# remove mongodb's database
|
|
rm -rf $VOL_BASE_DIR/mongo/db/
|