This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
osmith gerrit-no-reply at lists.osmocom.orgosmith has uploaded this change for review. ( https://gerrit.osmocom.org/c/docker-playground/+/23123 ) Change subject: kernel-test: add KERNEL_TEST_KVM env var ...................................................................... kernel-test: add KERNEL_TEST_KVM env var Allow to disable KVM, as the jenkins nodes apparently don't support it. This makes the tests run a bit slower, but not much. Related: OS#3208 Change-Id: I1f337af1e2de6db05b22636bc31a535404235559 --- M README.md M jenkins-common.sh M scripts/kernel-test/run-qemu.sh M ttcn3-ggsn-test/jenkins.sh 4 files changed, 25 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/docker-playground refs/changes/23/23123/1 diff --git a/README.md b/README.md index 27a589e..6a9f4b9 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,7 @@ Environment variables: * `KERNEL_TEST`: set to 1 to run the SUT in QEMU +* `KERNEL_TEST_KVM`: set to 0 to disable KVM acceleration * `KERNEL_BUILD`: set to 1 to build the kernel instead of using the pre-built one * `KERNEL_REMOTE_NAME`: git remote name (to add multiple git diff --git a/jenkins-common.sh b/jenkins-common.sh index 6c54109..e19b321 100644 --- a/jenkins-common.sh +++ b/jenkins-common.sh @@ -194,6 +194,12 @@ trap clean_up_common EXIT INT TERM 0 } +docker_kvm_param() { + if [ "$KERNEL_TEST_KVM" != 0 ]; then + echo "--device /dev/kvm:/dev/kvm" + fi +} + # Generate the initrd, and optionally build a kernel, for tests that involve # kernel modules. Boot the kernel once in QEMU inside docker to verify that it # works. See README.md for description of the KERNEL_* environment variables. @@ -212,6 +218,11 @@ local docker_image="$4" shift 4 + if [ "$KERNEL_TEST_KVM" != 0 ] && ! [ -e /dev/kvm ]; then + echo "ERROR: /dev/kvm not found! Consider running with: KERNEL_TEST_KVM=0" + exit 1 + fi + mkdir -p "$CACHE_DIR/kernel-test" cp "$kernel_config_fragment" \ @@ -221,7 +232,7 @@ docker run \ --cap-add=NET_ADMIN \ - --device /dev/kvm:/dev/kvm \ + $(docker_kvm_param) \ --device /dev/net/tun:/dev/net/tun \ -v "$CACHE_DIR:/cache" \ -v "$KERNEL_TEST_DIR:/kernel-test:ro" \ diff --git a/scripts/kernel-test/run-qemu.sh b/scripts/kernel-test/run-qemu.sh index 0a1824f..1873af4 100755 --- a/scripts/kernel-test/run-qemu.sh +++ b/scripts/kernel-test/run-qemu.sh @@ -13,8 +13,14 @@ $@ " +if [ -e /dev/kvm ]; then + MACHINE_ARG="-machine pc,accel=kvm" +else + MACHINE_ARG="-machine pc" +fi + qemu-system-x86_64 \ - -machine pc,accel=kvm \ + $MACHINE_ARG \ -smp 1 \ -m 512M \ -nodefconfig -no-user-config -nodefaults -display none \ diff --git a/ttcn3-ggsn-test/jenkins.sh b/ttcn3-ggsn-test/jenkins.sh index c6ea729..1881d59 100755 --- a/ttcn3-ggsn-test/jenkins.sh +++ b/ttcn3-ggsn-test/jenkins.sh @@ -41,7 +41,7 @@ GGSN_CMD="/kernel-test/run-qemu.sh" GGSN_DOCKER_ARGS=" $(docker_network_params $SUBNET 200) - --device /dev/kvm:/dev/kvm + $(docker_kvm_param) \ -v "$KERNEL_TEST_DIR:/kernel-test:ro" -v "$CACHE_DIR:/cache" " @@ -64,6 +64,10 @@ $REPO_USER/osmo-ggsn-$IMAGE_SUFFIX \ /bin/sh -c "$GGSN_CMD >/data/osmo-ggsn.log 2>&1" +if [ "$KERNEL_TEST" = 1 ] && [ "$KERNEL_TEST_KVM" = 0 ]; then + sleep 5 +fi + # start docker container with testsuite in foreground docker run --rm \ --sysctl net.ipv6.conf.all.disable_ipv6=0 \ -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/23123 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I1f337af1e2de6db05b22636bc31a535404235559 Gerrit-Change-Number: 23123 Gerrit-PatchSet: 1 Gerrit-Owner: osmith <osmith at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20210226/e9efe5e7/attachment.htm>