summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRunar Borge <runar@borge.nu>2019-09-27 21:31:59 +0200
committerRunar Borge <runar@borge.nu>2019-09-27 21:31:59 +0200
commit00752f98ab167ea655d4dc640bf0cd0c6f9c2aec (patch)
tree11d161976cd406a4c285d9c2c85d7b9f4c48d048
parent8bfc9cf65229a6c2406b68dd4a478d78d79743c5 (diff)
downloadvyos-build-00752f98ab167ea655d4dc640bf0cd0c6f9c2aec.tar.gz
vyos-build-00752f98ab167ea655d4dc640bf0cd0c6f9c2aec.zip
Testsuite: Adding support for running on non-kvm hosts
-rwxr-xr-xscripts/check-qemu-install25
1 files changed, 20 insertions, 5 deletions
diff --git a/scripts/check-qemu-install b/scripts/check-qemu-install
index 688aa556..a59b09a1 100755
--- a/scripts/check-qemu-install
+++ b/scripts/check-qemu-install
@@ -65,7 +65,10 @@ parser.add_argument('--silent', help='Do not show output on stdout unless an err
parser.add_argument('--debug', help='Send all debug output to stdout',
action='store_true',
default=False)
-parser.add_argument('--logfile', help='Log to file')
+parser.add_argument('--logfile', help='Log to file')
+parser.add_argument('--no-kvm', help='Disable use of kvm',
+ action='store_true',
+ default=False)
args = parser.parse_args()
@@ -130,6 +133,14 @@ if not os.path.isfile(args.iso):
log.error("Unable to find iso image to install")
sys.exit(1)
+if args.no_kvm:
+ log.error("KVM forced off by command line")
+ kvm=False
+elif not os.path.exists("/dev/kvm"):
+ log.error("KVM is not enabled on host, proceeding with software emulation")
+ kvm=False
+else:
+ kvm=True
# Creating diskimage!!
@@ -153,12 +164,14 @@ try:
-m 1G \
-nic user,model=virtio,mac=52:54:99:12:34:56,hostfwd=tcp::2299-:22 \
-machine accel=kvm \
- -cpu host -smp 2 \
+ {CPU} \
+ -smp 2 \
-vnc 0.0.0.0:99 \
-nographic \
-boot d -cdrom {CD} \
+ {KVM} \
-drive format=raw,file={DISK}
- """.format(CD=args.iso, DISK=args.disk)
+ """.format(CD=args.iso, DISK=args.disk, KVM="" if kvm else "--no-kvm", CPU="-cpu host" if kvm else "")
log.debug("Executing command: {}".format(cmd))
c = pexpect.spawn(cmd, logfile=stl)
@@ -240,11 +253,13 @@ try:
-m 1G \
-nic user,model=virtio,mac=52:54:99:12:34:56,hostfwd=tcp::2299-:22
-machine accel=kvm \
- -cpu host -smp 2 \
+ {CPU} \
+ -smp 2 \
-vnc 0.0.0.0:99 \
-nographic \
+ {KVM} \
-drive format=raw,file={DISK}
- """.format(DISK=args.disk)
+ """.format(DISK=args.disk, KVM="" if kvm else "--no-kvm", CPU="-cpu host" if kvm else "")
log.debug('Executing command: {}'.format(cmd))
c = pexpect.spawn(cmd, logfile=stl)