qemu/tests/vm/netbsd
Eduardo Habkost 6d46e602f1 tests/vm/netbsd: Disable IPv6
Workaround for issues when the host has no IPv6 connectivity.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20191018181705.17957-4-ehabkost@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2019-10-25 19:24:21 +01:00

50 lines
1.5 KiB
Python
Executable File

#!/usr/bin/env python
#
# NetBSD VM image
#
# Copyright 2017 Red Hat Inc.
#
# Authors:
# Fam Zheng <famz@redhat.com>
#
# This code is licensed under the GPL version 2 or later. See
# the COPYING file in the top-level directory.
#
import os
import sys
import subprocess
import basevm
class NetBSDVM(basevm.BaseVM):
name = "netbsd"
arch = "x86_64"
BUILD_SCRIPT = """
set -e;
rm -rf /var/tmp/qemu-test.*
cd $(mktemp -d /var/tmp/qemu-test.XXXXXX);
tar -xf /dev/rld1a;
./configure --python=python2.7 {configure_opts};
gmake --output-sync -j{jobs} {target} {verbose};
"""
# Workaround for NetBSD + IPv6 + slirp issues.
# NetBSD seems to ignore the ICMPv6 Destination Unreachable
# messages generated by slirp. When the host has no IPv6
# connectivity, this causes every connection to ftp.NetBSD.org
# take more than a minute to be established.
ipv6 = False
def build_image(self, img):
cimg = self._download_with_cache("http://download.patchew.org/netbsd-7.1-amd64.img.xz",
sha256sum='b633d565b0eac3d02015cd0c81440bd8a7a8df8512615ac1ee05d318be015732')
img_tmp_xz = img + ".tmp.xz"
img_tmp = img + ".tmp"
sys.stderr.write("Extracting the image...\n")
subprocess.check_call(["ln", "-f", cimg, img_tmp_xz])
subprocess.check_call(["xz", "--keep", "-dvf", img_tmp_xz])
os.rename(img_tmp, img)
if __name__ == "__main__":
sys.exit(basevm.main(NetBSDVM))