summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2019-09-27 21:58:03 +0200
committerGitHub <noreply@github.com>2019-09-27 21:58:03 +0200
commit173aaa25b60efa45b402b68f9b193cf9f83b3746 (patch)
tree64b2d5f3eeb9de96040a7a29103727ae90b68c3a /scripts
parent5ce1aaa58731f2725fed9d874afe7194c8800a0f (diff)
parent7e14af718d2356a7c0d69acfb1994b965660fb30 (diff)
downloadvyos-build-173aaa25b60efa45b402b68f9b193cf9f83b3746.tar.gz
vyos-build-173aaa25b60efa45b402b68f9b193cf9f83b3746.zip
Merge pull request #61 from runborg/eq-qemu-test
Qemu installation Test-suite
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/check-qemu-install31
1 files changed, 23 insertions, 8 deletions
diff --git a/scripts/check-qemu-install b/scripts/check-qemu-install
index 688aa556..a7c36c78 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()
@@ -99,7 +102,7 @@ log = logging.getLogger()
log.setLevel(logging.DEBUG)
stl = StreamToLogger(log)
-formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
+formatter = logging.Formatter('%(asctime)s + %(relativeCreated)-7d - %(levelname)5s - %(message)s')
handler = logging.StreamHandler(sys.stdout)
if args.silent:
@@ -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)
@@ -172,7 +185,7 @@ try:
log.warning("Did not find grub countdown window, ignoring")
log.info('Waiting for login prompt')
- c.expect('[Ll]ogin:', timeout=120)
+ c.expect('[Ll]ogin:', timeout=300)
c.sendline('vyos')
c.expect('[Pp]assword:', timeout=10)
c.sendline('vyos')
@@ -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)
@@ -259,7 +274,7 @@ try:
log.warning("Did not find grub countdown window, ignoring")
log.info('Waiting for login prompt')
- c.expect('[Ll]ogin:', timeout=120)
+ c.expect('[Ll]ogin:', timeout=300)
c.sendline('vyos')
c.expect('[Pp]assword:', timeout=10)
c.sendline('vyos')