aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Smith <osmith@sysmocom.de>2022-12-21 19:05:32 +0100
committerosmith <osmith@sysmocom.de>2023-01-16 15:19:29 +0000
commitf997b4e7712b65175deaf5ab13df0f568ae6f091 (patch)
treef170a8f500b67128ca4c61338056c73affeb4d99
parent4cb0fac1b0e18b8036cea66225681160561f422d (diff)
network_create: find free subnet automatically
Try multiple subnet numbers until successfully creating a network. This way we can run the same ttcn3 testsuite multiple times in parallel without conflicts (e.g. once against latest, once against nightly). Also we don't need to make sure each new testsuite has a unique subnet number anymore. I've considered also adjusting network_bridge_create, but that gets used exclusively by osmo-ran/jenkins.sh, a script which we don't actually run in jenkins. It seems that in this script it makes more sense to not get a random subnet number. Related: OS#5802 Change-Id: I57152b08ef0f38e17e7019a8df032189b03f56cf
-rw-r--r--jenkins-common.sh68
-rwxr-xr-xnplab-m3ua-test/jenkins.sh4
-rwxr-xr-xnplab-sua-test/jenkins.sh4
-rwxr-xr-xosmo-gsm-tester/jenkins.sh6
-rwxr-xr-xscripts/regen_doc.sh3
-rwxr-xr-xttcn3-bsc-test-vamos/jenkins.sh4
-rwxr-xr-xttcn3-bsc-test/jenkins-sccplite.sh4
-rwxr-xr-xttcn3-bsc-test/jenkins.sh4
-rwxr-xr-xttcn3-bscnat-test/jenkins.sh4
-rwxr-xr-xttcn3-bts-test/jenkins.sh7
-rwxr-xr-xttcn3-cbc-test/jenkins.sh4
-rwxr-xr-xttcn3-fr-test/jenkins.sh6
-rwxr-xr-xttcn3-gbproxy-test-fr/jenkins.sh6
-rwxr-xr-xttcn3-gbproxy-test/jenkins.sh6
-rwxr-xr-xttcn3-ggsn-test/jenkins-ogs.sh4
-rwxr-xr-xttcn3-ggsn-test/jenkins.sh5
-rwxr-xr-xttcn3-hlr-test/jenkins.sh6
-rwxr-xr-xttcn3-hnbgw-test/jenkins.sh5
-rwxr-xr-xttcn3-hnodeb-test/jenkins.sh4
-rwxr-xr-xttcn3-mgw-test/jenkins.sh4
-rwxr-xr-xttcn3-msc-test/jenkins.sh6
-rwxr-xr-xttcn3-nitb-sysinfo/jenkins.sh4
-rwxr-xr-xttcn3-ns-test/jenkins-fr.sh6
-rwxr-xr-xttcn3-ns-test/jenkins-sgsn-sns.sh6
-rwxr-xr-xttcn3-ns-test/jenkins-sns.sh6
-rwxr-xr-xttcn3-ns-test/jenkins.sh6
-rwxr-xr-xttcn3-pcap-client-test/jenkins.sh4
-rwxr-xr-xttcn3-pcu-test/jenkins-sns.sh6
-rwxr-xr-xttcn3-pcu-test/jenkins.sh6
-rwxr-xr-xttcn3-pgw-test/jenkins.sh4
-rwxr-xr-xttcn3-remsim-test/jenkins.sh12
-rwxr-xr-xttcn3-sccp-test/jenkins.sh4
-rwxr-xr-xttcn3-sgsn-test/jenkins.sh6
-rwxr-xr-xttcn3-sip-test/jenkins.sh6
-rwxr-xr-xttcn3-smlc-test/jenkins.sh4
-rwxr-xr-xttcn3-stp-test/jenkins.sh4
-rwxr-xr-xttcn3-upf-test/jenkins.sh4
37 files changed, 156 insertions, 96 deletions
diff --git a/jenkins-common.sh b/jenkins-common.sh
index 3a30ea0..758c4d0 100644
--- a/jenkins-common.sh
+++ b/jenkins-common.sh
@@ -195,8 +195,9 @@ network_clean() {
docker network inspect $NET_NAME | grep Name | cut -d : -f2 | awk -F\" 'NR>1{print $2}' | xargs -rn1 docker kill
}
+# Create network and find a free subnet automatically. The global variable
+# SUBNET gets set to the subnet number that has been used.
network_create() {
- NET=$1
if docker network ls | grep -q $NET_NAME; then
set +x
echo "Removing stale network and containers..."
@@ -204,12 +205,33 @@ network_create() {
network_clean
network_remove
fi
- SUB4="172.18.$NET.0/24"
- SUB6="fd02:db8:$NET::/64"
+
+ SUBNET="$PPID"
+ for i in $(seq 1 30); do
+ SUBNET="$(echo "($SUBNET + 1) % 256" | bc)"
+ SUB4="172.18.$SUBNET.0/24"
+ SUB6="fd02:db8:$SUBNET::/64"
+ set +x
+ echo "Creating network $NET_NAME, trying SUBNET=$SUBNET..."
+ set -x
+ if docker network create \
+ --internal \
+ --subnet "$SUB4" \
+ --ipv6 \
+ --subnet "$SUB6" \
+ "$NET_NAME"; then
+ set +x
+ echo
+ echo "### Network $NET_NAME created (SUBNET=$SUBNET) ###"
+ echo
+ set -x
+ return
+ fi
+ done
+
set +x
- echo "Creating network $NET_NAME"
- set -x
- docker network create --internal --subnet $SUB4 --ipv6 --subnet $SUB6 $NET_NAME
+ echo "ERROR: failed to create docker network"
+ exit 1
}
network_bridge_create() {
@@ -241,8 +263,40 @@ network_remove() {
docker network remove $NET_NAME
}
+network_replace_subnet_in_configs() {
+ set +x
+
+ local i
+ local files="$(find \
+ "$VOL_BASE_DIR" \
+ -name '*.cfg' -o \
+ -name '*.conf' -o \
+ -name '*.sh' -o \
+ -name '*.txt' -o \
+ -name '*.yaml' \
+ )"
+
+ if [ -z "$files" ]; then
+ echo "ERROR: network_replace_subnet_in_configs:" \
+ "no config files found!"
+ exit 1
+ fi
+
+ for i in $files; do
+ echo "Applying SUBNET=$SUBNET to: $i"
+ sed \
+ -i \
+ -E \
+ -e "s/172\.18\.[0-9]{1,3}\./172.18.$SUBNET./g" \
+ -e "s/fd02:db8:[0-9]{1,3}:/fd02:db8:$SUBNET:/g" \
+ "$i"
+ done
+
+ set -x
+}
+
# Generates list of params to pass to "docker run" to configure IP addresses
-# $1: SUBNET to use, same as passed to network_create()
+# $1: SUBNET to use, same as set by network_create()
# $2: Address suffix from SUBNET to apply to the container
docker_network_params() {
NET=$1
diff --git a/nplab-m3ua-test/jenkins.sh b/nplab-m3ua-test/jenkins.sh
index 87035f3..1b71671 100755
--- a/nplab-m3ua-test/jenkins.sh
+++ b/nplab-m3ua-test/jenkins.sh
@@ -18,8 +18,8 @@ cp m3ua-param-testtool.scm all-sgp-tests.txt $VOL_BASE_DIR/m3ua-tester/
mkdir $VOL_BASE_DIR/stp
cp osmo-stp.cfg $VOL_BASE_DIR/stp/
-SUBNET=7
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
# start container with STP in background
docker run --rm \
diff --git a/nplab-sua-test/jenkins.sh b/nplab-sua-test/jenkins.sh
index 4be00c8..6ee52ee 100755
--- a/nplab-sua-test/jenkins.sh
+++ b/nplab-sua-test/jenkins.sh
@@ -18,8 +18,8 @@ cp sua-param-testtool-sgp.scm some-sua-sgp-tests.txt $VOL_BASE_DIR/sua-tester/
mkdir $VOL_BASE_DIR/stp
cp osmo-stp.cfg $VOL_BASE_DIR/stp/
-SUBNET=6
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
# start container with STP in background
docker run --rm \
diff --git a/osmo-gsm-tester/jenkins.sh b/osmo-gsm-tester/jenkins.sh
index 85e6a69..ae04d1e 100755
--- a/osmo-gsm-tester/jenkins.sh
+++ b/osmo-gsm-tester/jenkins.sh
@@ -72,15 +72,15 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=50
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/ogt-slave
cp osmo-gsm-tester-slave.sh $VOL_BASE_DIR/ogt-slave/
mkdir $VOL_BASE_DIR/ogt-master
cp osmo-gsm-tester-master.sh $VOL_BASE_DIR/ogt-master/
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with osmo-gsm-tester slave
docker run --rm \
--cap-add=NET_ADMIN \
diff --git a/scripts/regen_doc.sh b/scripts/regen_doc.sh
index 012c12a..27c3138 100755
--- a/scripts/regen_doc.sh
+++ b/scripts/regen_doc.sh
@@ -21,8 +21,7 @@ fi
docker_images_require \
"$NAME-$IMAGE_SUFFIX"
-SUBNET=16
-network_create "$SUBNET"
+network_create
container_create() {
CONTAINERNAME=$1
diff --git a/ttcn3-bsc-test-vamos/jenkins.sh b/ttcn3-bsc-test-vamos/jenkins.sh
index 3f7f1ec..c859fd6 100755
--- a/ttcn3-bsc-test-vamos/jenkins.sh
+++ b/ttcn3-bsc-test-vamos/jenkins.sh
@@ -23,8 +23,8 @@ cp osmo-bsc.cfg $VOL_BASE_DIR/bsc/
mkdir $VOL_BASE_DIR/bts-omldummy
-SUBNET=31
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with STP
docker run --rm \
diff --git a/ttcn3-bsc-test/jenkins-sccplite.sh b/ttcn3-bsc-test/jenkins-sccplite.sh
index 6dac56a..2343b4a 100755
--- a/ttcn3-bsc-test/jenkins-sccplite.sh
+++ b/ttcn3-bsc-test/jenkins-sccplite.sh
@@ -22,8 +22,8 @@ cp sccplite/osmo-bsc.cfg $VOL_BASE_DIR/bsc/
mkdir $VOL_BASE_DIR/bts-omldummy
-SUBNET=12
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with BSC
docker run --rm \
diff --git a/ttcn3-bsc-test/jenkins.sh b/ttcn3-bsc-test/jenkins.sh
index 2138169..149e0d1 100755
--- a/ttcn3-bsc-test/jenkins.sh
+++ b/ttcn3-bsc-test/jenkins.sh
@@ -23,8 +23,8 @@ cp osmo-bsc.cfg $VOL_BASE_DIR/bsc/
mkdir $VOL_BASE_DIR/bts-omldummy
-SUBNET=2
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with STP
docker run --rm \
diff --git a/ttcn3-bscnat-test/jenkins.sh b/ttcn3-bscnat-test/jenkins.sh
index a63cdad..7837476 100755
--- a/ttcn3-bscnat-test/jenkins.sh
+++ b/ttcn3-bscnat-test/jenkins.sh
@@ -17,8 +17,8 @@ mkdir $VOL_BASE_DIR/bscnat
cp osmo-bsc-nat.cfg $VOL_BASE_DIR/bscnat/
cp bscs.config $VOL_BASE_DIR/bscnat/
-SUBNET=15
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with BSCNAT
docker run --rm \
diff --git a/ttcn3-bts-test/jenkins.sh b/ttcn3-bts-test/jenkins.sh
index 3f1f2f1..691c753 100755
--- a/ttcn3-bts-test/jenkins.sh
+++ b/ttcn3-bts-test/jenkins.sh
@@ -121,8 +121,7 @@ start_testsuite() {
$REPO_USER/ttcn3-bts-test
}
-SUBNET=9
-network_create $SUBNET
+network_create
mkdir $VOL_BASE_DIR/bts-tester-generic
cp generic/BTS_Tests.cfg $VOL_BASE_DIR/bts-tester-generic/
@@ -162,6 +161,7 @@ mkdir $VOL_BASE_DIR/trxcon
mkdir $VOL_BASE_DIR/virtphy
# 1) classic test suite with BSC for OML and trxcon+fake_trx
+network_replace_subnet_in_configs
start_bsc
start_bts trx 1
start_fake_trx
@@ -180,6 +180,7 @@ if ! image_suffix_is_master; then
sed -i "/^ logging level osmux info/d" $VOL_BASE_DIR/bts/osmo-bts.gen.cfg
sed -i "/^ osmux/{N;N;N;N;d;}" $VOL_BASE_DIR/bts/osmo-bts.gen.cfg
fi
+network_replace_subnet_in_configs
start_bts virtual 0
start_virtphy
# ... and execute the testsuite again with different cfg
@@ -197,6 +198,7 @@ if ! image_suffix_is_master; then
sed -i "/^ logging level osmux info/d" $VOL_BASE_DIR/bts/osmo-bts.gen.cfg
sed -i "/^ osmux/{N;N;N;N;d;}" $VOL_BASE_DIR/bts/osmo-bts.gen.cfg
fi
+network_replace_subnet_in_configs
start_bts trx 1
start_fake_trx
start_trxcon
@@ -213,6 +215,7 @@ if ! image_suffix_is_master; then
fi
# restart the BSC/BTS and run the testsuite again
docker container kill ${BUILD_TAG}-bts
+network_replace_subnet_in_configs
start_bsc
start_bts trx 1
start_testsuite hopping
diff --git a/ttcn3-cbc-test/jenkins.sh b/ttcn3-cbc-test/jenkins.sh
index 63bf3f9..e1958ef 100755
--- a/ttcn3-cbc-test/jenkins.sh
+++ b/ttcn3-cbc-test/jenkins.sh
@@ -16,8 +16,8 @@ write_mp_osmo_repo "$VOL_BASE_DIR/cbc-tester/CBC_Tests.cfg"
mkdir $VOL_BASE_DIR/cbc
cp osmo-cbc.cfg $VOL_BASE_DIR/cbc/
-SUBNET=27
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with CBC
docker run --rm \
diff --git a/ttcn3-fr-test/jenkins.sh b/ttcn3-fr-test/jenkins.sh
index 182f512..9122063 100755
--- a/ttcn3-fr-test/jenkins.sh
+++ b/ttcn3-fr-test/jenkins.sh
@@ -18,9 +18,6 @@ clean_up() {
docker container rm ${BUILD_TAG}-frnet ${BUILD_TAG}-ttcn3-fr-test
}
-SUBNET=26
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/fr-tester
# if we don't change permissions, dumpcap fails to write (despite starting it as root!)
chmod a+w $VOL_BASE_DIR/fr-tester
@@ -33,6 +30,9 @@ cp FRNET_Tests.cfg $VOL_BASE_DIR/frnet/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with FRNET
docker run \
`# --rm is done in clean_up()` \
diff --git a/ttcn3-gbproxy-test-fr/jenkins.sh b/ttcn3-gbproxy-test-fr/jenkins.sh
index f4827a8..ab62bc1 100755
--- a/ttcn3-gbproxy-test-fr/jenkins.sh
+++ b/ttcn3-gbproxy-test-fr/jenkins.sh
@@ -22,9 +22,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=25
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/gbproxy-tester
# if we don't change permissions, dumpcap fails to write (despite starting it as root!)
chmod a+w $VOL_BASE_DIR/gbproxy-tester
@@ -36,6 +33,9 @@ cp osmo-gbproxy.cfg $VOL_BASE_DIR/gbproxy/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with gbproxy
docker run --rm \
--cap-add=NET_RAW --cap-add=SYS_RAWIO \
diff --git a/ttcn3-gbproxy-test/jenkins.sh b/ttcn3-gbproxy-test/jenkins.sh
index f8fae0f..0ee7a5f 100755
--- a/ttcn3-gbproxy-test/jenkins.sh
+++ b/ttcn3-gbproxy-test/jenkins.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=24
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/gbproxy-tester
# if we don't change permissions, dumpcap fails to write (despite starting it as root!)
chmod a+w $VOL_BASE_DIR/gbproxy-tester
@@ -24,6 +21,9 @@ cp osmo-gbproxy.cfg $VOL_BASE_DIR/gbproxy/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with gbproxy
docker run --rm \
$(docker_network_params $SUBNET 10) \
diff --git a/ttcn3-ggsn-test/jenkins-ogs.sh b/ttcn3-ggsn-test/jenkins-ogs.sh
index b6500f0..93cc33a 100755
--- a/ttcn3-ggsn-test/jenkins-ogs.sh
+++ b/ttcn3-ggsn-test/jenkins-ogs.sh
@@ -24,8 +24,8 @@ cp ogs/freediameter.conf $VOL_BASE_DIR/ggsn/
cp ogs/upfd.sh $VOL_BASE_DIR/ggsn/
cp ogs/upfd-setup.sh $VOL_BASE_DIR/ggsn/
-SUBNET=3
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
# start container with ggsn (smf+upf) in background
docker run --cap-add=NET_ADMIN \
diff --git a/ttcn3-ggsn-test/jenkins.sh b/ttcn3-ggsn-test/jenkins.sh
index 0797f76..00995bf 100755
--- a/ttcn3-ggsn-test/jenkins.sh
+++ b/ttcn3-ggsn-test/jenkins.sh
@@ -23,8 +23,7 @@ write_mp_osmo_repo "$VOL_BASE_DIR/ggsn-tester/GGSN_Tests.cfg"
mkdir $VOL_BASE_DIR/ggsn
-SUBNET=3
-network_create $SUBNET
+network_create
# start container with ggsn in background
GGSN_CMD="osmo-ggsn -c /data/osmo-ggsn.cfg"
@@ -32,6 +31,7 @@ GGSN_DOCKER_ARGS=""
if [ "$KERNEL_TEST" = "1" ]; then
cp osmo-ggsn-kernel-gtp.cfg $VOL_BASE_DIR/ggsn/osmo-ggsn.cfg
cp initrd-ggsn.sh $VOL_BASE_DIR/ggsn/
+ network_replace_subnet_in_configs
kernel_test_prepare \
"defconfig" \
@@ -50,6 +50,7 @@ if [ "$KERNEL_TEST" = "1" ]; then
OSMO_SUT_HOST="172.18.$SUBNET.200"
else
cp osmo-ggsn.cfg $VOL_BASE_DIR/ggsn/
+ network_replace_subnet_in_configs
GGSN_DOCKER_ARGS="
$(docker_network_params $SUBNET 201)
diff --git a/ttcn3-hlr-test/jenkins.sh b/ttcn3-hlr-test/jenkins.sh
index 317f141..66d102e 100755
--- a/ttcn3-hlr-test/jenkins.sh
+++ b/ttcn3-hlr-test/jenkins.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=10
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/hlr-tester
cp HLR_Tests.cfg $VOL_BASE_DIR/hlr-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/hlr-tester/HLR_Tests.cfg"
@@ -19,6 +16,9 @@ write_mp_osmo_repo "$VOL_BASE_DIR/hlr-tester/HLR_Tests.cfg"
mkdir $VOL_BASE_DIR/hlr
cp osmo-hlr.cfg $VOL_BASE_DIR/hlr/
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with HLR
docker run --rm \
$(docker_network_params $SUBNET 20) \
diff --git a/ttcn3-hnbgw-test/jenkins.sh b/ttcn3-hnbgw-test/jenkins.sh
index fee2728..5a40e5b 100755
--- a/ttcn3-hnbgw-test/jenkins.sh
+++ b/ttcn3-hnbgw-test/jenkins.sh
@@ -19,8 +19,7 @@ clean_up() {
$VOL_BASE_DIR_PFCP/hnbgw-tester/junit-xml-with-pfcp-*.log
}
-SUBNET=35
-network_create $SUBNET
+network_create
run_tests() {
base_dir="$1"
@@ -42,6 +41,8 @@ run_tests() {
mkdir $base_dir/unix
+ network_replace_subnet_in_configs
+
echo Starting container with STP
docker run --rm \
$(docker_network_params $SUBNET 200) \
diff --git a/ttcn3-hnodeb-test/jenkins.sh b/ttcn3-hnodeb-test/jenkins.sh
index 358280d..21e72c0 100755
--- a/ttcn3-hnodeb-test/jenkins.sh
+++ b/ttcn3-hnodeb-test/jenkins.sh
@@ -20,8 +20,8 @@ cp osmo-hnodeb.cfg $VOL_BASE_DIR/hnodeb/
mkdir $VOL_BASE_DIR/unix
-SUBNET=33
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with HNodeB
docker run --rm \
diff --git a/ttcn3-mgw-test/jenkins.sh b/ttcn3-mgw-test/jenkins.sh
index 2dee534..7b31f6d 100755
--- a/ttcn3-mgw-test/jenkins.sh
+++ b/ttcn3-mgw-test/jenkins.sh
@@ -20,8 +20,8 @@ if ! image_suffix_is_master; then
sed -i "/^ osmux bind-ip-v6 fd02:db8:4::180/d" $VOL_BASE_DIR/mgw/osmo-mgw.cfg
fi
-SUBNET=4
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
# start container with mgw in background
docker run --rm \
diff --git a/ttcn3-msc-test/jenkins.sh b/ttcn3-msc-test/jenkins.sh
index a8e6229..6a0f3d5 100755
--- a/ttcn3-msc-test/jenkins.sh
+++ b/ttcn3-msc-test/jenkins.sh
@@ -10,9 +10,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=20
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/msc-tester
mkdir $VOL_BASE_DIR/msc-tester/unix
cp MSC_Tests.cfg $VOL_BASE_DIR/msc-tester/
@@ -27,6 +24,9 @@ cp osmo-msc.cfg $VOL_BASE_DIR/msc/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with STP
docker run --rm \
$(docker_network_params $SUBNET 200) \
diff --git a/ttcn3-nitb-sysinfo/jenkins.sh b/ttcn3-nitb-sysinfo/jenkins.sh
index e2cc494..7a912f8 100755
--- a/ttcn3-nitb-sysinfo/jenkins.sh
+++ b/ttcn3-nitb-sysinfo/jenkins.sh
@@ -19,8 +19,8 @@ clean_up() {
docker container stop -t 0 ${BUILD_TAG}-sysinfo-helper
}
-SUBNET=5
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
# start container with nitb in background
docker volume rm nitb-vol
diff --git a/ttcn3-ns-test/jenkins-fr.sh b/ttcn3-ns-test/jenkins-fr.sh
index e30f6f9..3b609ab 100755
--- a/ttcn3-ns-test/jenkins-fr.sh
+++ b/ttcn3-ns-test/jenkins-fr.sh
@@ -22,9 +22,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=30
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/ns-tester
cp fr/NS_Tests.cfg $VOL_BASE_DIR/ns-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
@@ -32,6 +29,9 @@ write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
mkdir $VOL_BASE_DIR/ns
cp fr/osmo-ns-dummy.cfg $VOL_BASE_DIR/ns/
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with osmo-ns-dummy
docker run --rm \
--cap-add=NET_RAW --cap-add=SYS_RAWIO \
diff --git a/ttcn3-ns-test/jenkins-sgsn-sns.sh b/ttcn3-ns-test/jenkins-sgsn-sns.sh
index 4f90421..712b38c 100755
--- a/ttcn3-ns-test/jenkins-sgsn-sns.sh
+++ b/ttcn3-ns-test/jenkins-sgsn-sns.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=32
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/ns-tester
cp sgsn-sns/NS_Tests.cfg $VOL_BASE_DIR/ns-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
@@ -19,6 +16,9 @@ write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
mkdir $VOL_BASE_DIR/ns
cp sgsn-sns/osmo-ns-dummy.cfg $VOL_BASE_DIR/ns/
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with osmo-ns-dummy
docker run --rm \
$(docker_network_params $SUBNET 101) \
diff --git a/ttcn3-ns-test/jenkins-sns.sh b/ttcn3-ns-test/jenkins-sns.sh
index c2fd651..1ed983b 100755
--- a/ttcn3-ns-test/jenkins-sns.sh
+++ b/ttcn3-ns-test/jenkins-sns.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=29
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/ns-tester
cp sns/NS_Tests.cfg $VOL_BASE_DIR/ns-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
@@ -19,6 +16,9 @@ write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
mkdir $VOL_BASE_DIR/ns
cp sns/osmo-ns-dummy.cfg $VOL_BASE_DIR/ns/
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with osmo-ns-dummy
docker run --rm \
$(docker_network_params $SUBNET 101) \
diff --git a/ttcn3-ns-test/jenkins.sh b/ttcn3-ns-test/jenkins.sh
index af0552c..755af51 100755
--- a/ttcn3-ns-test/jenkins.sh
+++ b/ttcn3-ns-test/jenkins.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=28
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/ns-tester
cp NS_Tests.cfg $VOL_BASE_DIR/ns-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
@@ -19,6 +16,9 @@ write_mp_osmo_repo "$VOL_BASE_DIR/ns-tester/NS_Tests.cfg"
mkdir $VOL_BASE_DIR/ns
cp osmo-ns-dummy.cfg $VOL_BASE_DIR/ns/
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with osmo-ns-dummy
docker run --rm \
$(docker_network_params $SUBNET 101) \
diff --git a/ttcn3-pcap-client-test/jenkins.sh b/ttcn3-pcap-client-test/jenkins.sh
index 253b6c2..a5769a4 100755
--- a/ttcn3-pcap-client-test/jenkins.sh
+++ b/ttcn3-pcap-client-test/jenkins.sh
@@ -16,8 +16,8 @@ write_mp_osmo_repo "$VOL_BASE_DIR/pcap-client-tester/OPCAP_CLIENT_Tests.cfg"
mkdir $VOL_BASE_DIR/pcap-client
cp osmo-pcap-client.cfg $VOL_BASE_DIR/pcap-client/
-SUBNET=31
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with pcap-client
docker run --rm \
diff --git a/ttcn3-pcu-test/jenkins-sns.sh b/ttcn3-pcu-test/jenkins-sns.sh
index dfcf403..393e828 100755
--- a/ttcn3-pcu-test/jenkins-sns.sh
+++ b/ttcn3-pcu-test/jenkins-sns.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=14
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/pcu-tester
mkdir $VOL_BASE_DIR/pcu-tester/unix
cp sns/PCU_Tests.cfg $VOL_BASE_DIR/pcu-tester/
@@ -23,6 +20,9 @@ cp sns/osmo-pcu.cfg $VOL_BASE_DIR/pcu/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with PCU
docker run --rm \
$(docker_network_params $SUBNET 101) \
diff --git a/ttcn3-pcu-test/jenkins.sh b/ttcn3-pcu-test/jenkins.sh
index 4c0455d..ee53bb7 100755
--- a/ttcn3-pcu-test/jenkins.sh
+++ b/ttcn3-pcu-test/jenkins.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=13
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/pcu-tester
mkdir $VOL_BASE_DIR/pcu-tester/unix
cp PCU_Tests.cfg $VOL_BASE_DIR/pcu-tester/
@@ -23,6 +20,9 @@ cp osmo-pcu.cfg $VOL_BASE_DIR/pcu/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with PCU
docker run --rm \
$(docker_network_params $SUBNET 101) \
diff --git a/ttcn3-pgw-test/jenkins.sh b/ttcn3-pgw-test/jenkins.sh
index 2810899..a61584d 100755
--- a/ttcn3-pgw-test/jenkins.sh
+++ b/ttcn3-pgw-test/jenkins.sh
@@ -19,8 +19,8 @@ cp open5gs-*.yaml $VOL_BASE_DIR/pgw/
cp upfd.sh $VOL_BASE_DIR/pgw/
cp upfd-setup.sh $VOL_BASE_DIR/pgw/
-SUBNET=18
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
# start container with open5gs-nrfd in background
docker run --rm \
diff --git a/ttcn3-remsim-test/jenkins.sh b/ttcn3-remsim-test/jenkins.sh
index b9e74b4..a7325e7 100755
--- a/ttcn3-remsim-test/jenkins.sh
+++ b/ttcn3-remsim-test/jenkins.sh
@@ -62,8 +62,7 @@ start_testsuite() {
$REPO_USER/ttcn3-remsim-test
}
-SUBNET=17
-network_create $SUBNET
+network_create
mkdir $VOL_BASE_DIR/remsim-tester
@@ -76,23 +75,26 @@ mkdir $VOL_BASE_DIR/client
# 1) server test suite
-start_server
cp REMSIM_Tests.cfg $VOL_BASE_DIR/remsim-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/remsim-tester/REMSIM_Tests.cfg"
+network_replace_subnet_in_configs
+start_server
start_testsuite
docker container kill ${BUILD_TAG}-server
# 2) bankd test suite
echo "Changing to bankd configuration"
-start_bankd
cp bankd/REMSIM_Tests.cfg $VOL_BASE_DIR/remsim-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/remsim-tester/REMSIM_Tests.cfg"
+network_replace_subnet_in_configs
+start_bankd
start_testsuite
docker container kill ${BUILD_TAG}-bankd
# 3) client test suite
echo "Changing to client configuration"
-start_client
cp client/REMSIM_Tests.cfg $VOL_BASE_DIR/remsim-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/remsim-tester/REMSIM_Tests.cfg"
+network_replace_subnet_in_configs
+start_client
start_testsuite
diff --git a/ttcn3-sccp-test/jenkins.sh b/ttcn3-sccp-test/jenkins.sh
index 3a3346a..7eadd5d 100755
--- a/ttcn3-sccp-test/jenkins.sh
+++ b/ttcn3-sccp-test/jenkins.sh
@@ -17,8 +17,8 @@ write_mp_osmo_repo "$VOL_BASE_DIR/sccp-tester/SCCP_Tests.cfg"
mkdir $VOL_BASE_DIR/sccp
cp sccp_demo_user.cfg $VOL_BASE_DIR/sccp/
-SUBNET=22
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with sccp_demo_user
docker run --rm \
diff --git a/ttcn3-sgsn-test/jenkins.sh b/ttcn3-sgsn-test/jenkins.sh
index dde90a2..9238096 100755
--- a/ttcn3-sgsn-test/jenkins.sh
+++ b/ttcn3-sgsn-test/jenkins.sh
@@ -10,9 +10,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=8
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/sgsn-tester
cp SGSN_Tests.cfg $VOL_BASE_DIR/sgsn-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/sgsn-tester/SGSN_Tests.cfg"
@@ -25,6 +22,9 @@ cp osmo-stp.cfg $VOL_BASE_DIR/stp/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with STP
docker run --rm \
$(docker_network_params $SUBNET 200) \
diff --git a/ttcn3-sip-test/jenkins.sh b/ttcn3-sip-test/jenkins.sh
index 334f791..2a20dcc 100755
--- a/ttcn3-sip-test/jenkins.sh
+++ b/ttcn3-sip-test/jenkins.sh
@@ -9,9 +9,6 @@ docker_images_require \
set_clean_up_trap
set -e
-SUBNET=11
-network_create $SUBNET
-
mkdir $VOL_BASE_DIR/sip-tester
mkdir $VOL_BASE_DIR/sip-tester/unix
cp SIP_Tests.cfg $VOL_BASE_DIR/sip-tester/
@@ -23,6 +20,9 @@ cp osmo-sip-connector.cfg $VOL_BASE_DIR/sip/
mkdir $VOL_BASE_DIR/unix
+network_create
+network_replace_subnet_in_configs
+
echo Starting container with osmo-sip-connector
docker run --rm \
$(docker_network_params $SUBNET 10) \
diff --git a/ttcn3-smlc-test/jenkins.sh b/ttcn3-smlc-test/jenkins.sh
index 8aeed92..33a1293 100755
--- a/ttcn3-smlc-test/jenkins.sh
+++ b/ttcn3-smlc-test/jenkins.sh
@@ -20,8 +20,8 @@ cp osmo-stp.cfg $VOL_BASE_DIR/stp/
mkdir $VOL_BASE_DIR/smlc
cp osmo-smlc.cfg $VOL_BASE_DIR/smlc/
-SUBNET=23
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with STP
docker run --rm \
diff --git a/ttcn3-stp-test/jenkins.sh b/ttcn3-stp-test/jenkins.sh
index 23434f3..006bb3b 100755
--- a/ttcn3-stp-test/jenkins.sh
+++ b/ttcn3-stp-test/jenkins.sh
@@ -16,8 +16,8 @@ write_mp_osmo_repo "$VOL_BASE_DIR/stp-tester/STP_Tests.cfg"
mkdir $VOL_BASE_DIR/stp
cp osmo-stp.cfg $VOL_BASE_DIR/stp/
-SUBNET=19
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with STP
docker run --rm \
diff --git a/ttcn3-upf-test/jenkins.sh b/ttcn3-upf-test/jenkins.sh
index 2fb6d43..f814975 100755
--- a/ttcn3-upf-test/jenkins.sh
+++ b/ttcn3-upf-test/jenkins.sh
@@ -16,8 +16,8 @@ write_mp_osmo_repo "$VOL_BASE_DIR/upf-tester/UPF_Tests.cfg"
mkdir $VOL_BASE_DIR/upf
cp osmo-upf.cfg $VOL_BASE_DIR/upf/
-SUBNET=34
-network_create $SUBNET
+network_create
+network_replace_subnet_in_configs
echo Starting container with UPF
docker run --rm \