osmith has submitted this change. (
https://gerrit.osmocom.org/c/docker-playground/+/36390?usp=email )
(
1 is the latest approved patch-set.
No files were changed between the latest approved patch-set and the submitted one.
)Change subject: ttcn3-ggsn-test/jenkins: add functions for start ggsn/testsuite
......................................................................
ttcn3-ggsn-test/jenkins: add functions for start ggsn/testsuite
Prepare to run start_ggsn and start_testsuite multiple times with
different configurations in a follow-up patch.
Related: OS#6096
Change-Id: I0754b0df5f1b0b162732c3db0797f65676553ab0
---
M ttcn3-ggsn-test/jenkins.sh
1 file changed, 78 insertions(+), 59 deletions(-)
Approvals:
pespin: Looks good to me, but someone else must approve
Jenkins Builder: Verified
laforge: Looks good to me, approved
diff --git a/ttcn3-ggsn-test/jenkins.sh b/ttcn3-ggsn-test/jenkins.sh
index 3909036..1ea9d91 100755
--- a/ttcn3-ggsn-test/jenkins.sh
+++ b/ttcn3-ggsn-test/jenkins.sh
@@ -11,6 +11,69 @@
set_clean_up_trap
set -e
+# Start container with ggsn in background
+start_ggsn() {
+ GGSN_CMD="osmo-ggsn -c /data/osmo-ggsn.cfg"
+ 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" \
+ "fragment.config" \
+ "$VOL_BASE_DIR/ggsn/initrd-ggsn.sh" \
+ "$REPO_USER/osmo-ggsn-$IMAGE_SUFFIX" \
+ -v $VOL_BASE_DIR/ggsn:/data
+
+ GGSN_CMD="/kernel-test/run-qemu.sh"
+ GGSN_DOCKER_ARGS="
+ $(docker_network_params $SUBNET 200)
+ $(docker_kvm_param)
+ -v "$KERNEL_TEST_DIR:/kernel-test:ro"
+ -v "$CACHE_DIR:/cache"
+ "
+ 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)
+ "
+ OSMO_SUT_HOST="172.18.$SUBNET.201"
+ fi
+ docker run --rm \
+ --cap-add=NET_ADMIN \
+ --device /dev/net/tun:/dev/net/tun \
+ --sysctl net.ipv6.conf.all.disable_ipv6=0 \
+ --ulimit core=-1 \
+ -v $VOL_BASE_DIR/ggsn:/data \
+ --name ${BUILD_TAG}-ggsn -d \
+ $DOCKER_ARGS \
+ $GGSN_DOCKER_ARGS \
+ $REPO_USER/osmo-ggsn-$IMAGE_SUFFIX \
+ /bin/sh -c "$GGSN_CMD >/data/osmo-ggsn.log 2>&1"
+
+ kernel_test_wait_for_vm "$VOL_BASE_DIR/ggsn/osmo-ggsn.log"
+}
+
+# Start docker container with testsuite in foreground
+start_testsuite() {
+ docker run --rm \
+ --sysctl net.ipv6.conf.all.disable_ipv6=0 \
+ $(docker_network_params $SUBNET 202) \
+ --ulimit core=-1 \
+ -v $VOL_BASE_DIR/ggsn-tester:/data \
+ -e "TTCN3_PCAP_PATH=/data" \
+ -e "OSMO_SUT_HOST=$OSMO_SUT_HOST" \
+ -e "OSMO_SUT_PORT=4260" \
+ --name ${BUILD_TAG}-ggsn-test \
+ $DOCKER_ARGS \
+ $REPO_USER/ttcn3-ggsn-test
+}
+
mkdir $VOL_BASE_DIR/ggsn-tester
cp GGSN_Tests.cfg $VOL_BASE_DIR/ggsn-tester/
write_mp_osmo_repo "$VOL_BASE_DIR/ggsn-tester/GGSN_Tests.cfg"
@@ -18,62 +81,5 @@
mkdir $VOL_BASE_DIR/ggsn
network_create
-
-# start container with ggsn in background
-GGSN_CMD="osmo-ggsn -c /data/osmo-ggsn.cfg"
-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" \
- "fragment.config" \
- "$VOL_BASE_DIR/ggsn/initrd-ggsn.sh" \
- "$REPO_USER/osmo-ggsn-$IMAGE_SUFFIX" \
- -v $VOL_BASE_DIR/ggsn:/data
-
- GGSN_CMD="/kernel-test/run-qemu.sh"
- GGSN_DOCKER_ARGS="
- $(docker_network_params $SUBNET 200)
- $(docker_kvm_param)
- -v "$KERNEL_TEST_DIR:/kernel-test:ro"
- -v "$CACHE_DIR:/cache"
- "
- 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)
- "
- OSMO_SUT_HOST="172.18.$SUBNET.201"
-fi
-docker run --rm \
- --cap-add=NET_ADMIN \
- --device /dev/net/tun:/dev/net/tun \
- --sysctl net.ipv6.conf.all.disable_ipv6=0 \
- --ulimit core=-1 \
- -v $VOL_BASE_DIR/ggsn:/data \
- --name ${BUILD_TAG}-ggsn -d \
- $DOCKER_ARGS \
- $GGSN_DOCKER_ARGS \
- $REPO_USER/osmo-ggsn-$IMAGE_SUFFIX \
- /bin/sh -c "$GGSN_CMD >/data/osmo-ggsn.log 2>&1"
-
-kernel_test_wait_for_vm "$VOL_BASE_DIR/ggsn/osmo-ggsn.log"
-
-# 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/ggsn-tester:/data \
- -e "TTCN3_PCAP_PATH=/data" \
- -e "OSMO_SUT_HOST=$OSMO_SUT_HOST" \
- -e "OSMO_SUT_PORT=4260" \
- --name ${BUILD_TAG}-ggsn-test \
- $DOCKER_ARGS \
- $REPO_USER/ttcn3-ggsn-test
+start_ggsn
+start_testsuite
--
To view, visit
https://gerrit.osmocom.org/c/docker-playground/+/36390?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: docker-playground
Gerrit-Branch: master
Gerrit-Change-Id: I0754b0df5f1b0b162732c3db0797f65676553ab0
Gerrit-Change-Number: 36390
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged