tests/functional/s390x/test_pxelinux: Fix warnings from pylint
pylint complains about wrong indentation in one of the lines and that the pxelinux_cfg_contents is a constant that should be written with capital letters. While we're at it, also add the missing doc strings. Reviewed-by: Jared Rossi <jrossi@linux.ibm.com> Signed-off-by: Thomas Huth <thuth@redhat.com> Message-ID: <20250912085251.274294-1-thuth@redhat.com>
This commit is contained in:
parent
6096dfa6c5
commit
fa1bc5c8c3
1 changed files with 18 additions and 7 deletions
|
|
@ -1,10 +1,11 @@
|
|||
#!/usr/bin/env python3
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#
|
||||
# Functional test that checks the pxelinux.cfg network booting of a s390x VM
|
||||
# (TFTP booting without config file is already tested by the pxe qtest, so
|
||||
# we don't repeat that here).
|
||||
'''
|
||||
Functional test that checks the pxelinux.cfg network booting of a s390x VM
|
||||
(TFTP booting without config file is already tested by the pxe qtest, so
|
||||
we don't repeat that here).
|
||||
'''
|
||||
|
||||
import os
|
||||
import shutil
|
||||
|
|
@ -12,7 +13,7 @@ import shutil
|
|||
from qemu_test import QemuSystemTest, Asset, wait_for_console_pattern
|
||||
|
||||
|
||||
pxelinux_cfg_contents='''# pxelinux.cfg style config file
|
||||
PXELINUX_CFG_CONTENTS='''# pxelinux.cfg style config file
|
||||
default Debian
|
||||
label Nonexisting
|
||||
kernel kernel.notavailable
|
||||
|
|
@ -26,6 +27,10 @@ kernel kernel.fedora
|
|||
'''
|
||||
|
||||
class S390PxeLinux(QemuSystemTest):
|
||||
'''
|
||||
Test various ways of booting via a pxelinux.cfg file, for details see:
|
||||
https://wiki.syslinux.org/wiki/index.php?title=PXELINUX#Configuration
|
||||
'''
|
||||
|
||||
ASSET_DEBIAN_KERNEL = Asset(
|
||||
('https://snapshot.debian.org/archive/debian/'
|
||||
|
|
@ -46,6 +51,7 @@ class S390PxeLinux(QemuSystemTest):
|
|||
'480859574f3f44caa6cd35c62d70e1ac0609134e22ce2a954bbed9b110c06e0b')
|
||||
|
||||
def pxelinux_launch(self, pl_name='default', extra_opts=None):
|
||||
'''Create a pxelinux.cfg file in the right location and launch QEMU'''
|
||||
self.require_netdev('user')
|
||||
self.set_machine('s390-ccw-virtio')
|
||||
|
||||
|
|
@ -66,11 +72,11 @@ class S390PxeLinux(QemuSystemTest):
|
|||
|
||||
cfg_fname = self.scratch_file('tftp', 'pxelinux.cfg', pl_name)
|
||||
with open(cfg_fname, 'w', encoding='utf-8') as f:
|
||||
f.write(pxelinux_cfg_contents)
|
||||
f.write(PXELINUX_CFG_CONTENTS)
|
||||
|
||||
virtio_net_dev = 'virtio-net-ccw,netdev=n1,bootindex=1'
|
||||
if extra_opts:
|
||||
virtio_net_dev += ',' + extra_opts
|
||||
virtio_net_dev += ',' + extra_opts
|
||||
|
||||
self.vm.add_args('-m', '384',
|
||||
'-netdev', f'user,id=n1,tftp={tftpdir}',
|
||||
|
|
@ -80,6 +86,7 @@ class S390PxeLinux(QemuSystemTest):
|
|||
|
||||
|
||||
def test_default(self):
|
||||
'''Check whether the guest uses the "default" file name'''
|
||||
self.pxelinux_launch()
|
||||
# The kernel prints its arguments to the console, so we can use
|
||||
# this to check whether the kernel parameters are correctly handled:
|
||||
|
|
@ -89,11 +96,13 @@ class S390PxeLinux(QemuSystemTest):
|
|||
wait_for_console_pattern(self, 'Run /init as init process')
|
||||
|
||||
def test_mac(self):
|
||||
'''Check whether the guest uses file name based on its MAC address'''
|
||||
self.pxelinux_launch(pl_name='01-02-ca-fe-ba-be-42',
|
||||
extra_opts='mac=02:ca:fe:ba:be:42,loadparm=3')
|
||||
wait_for_console_pattern(self, 'Linux version 5.3.7-301.fc31.s390x')
|
||||
|
||||
def test_uuid(self):
|
||||
'''Check whether the guest uses file name based on its UUID'''
|
||||
# Also add a non-bootable disk to check the fallback to network boot:
|
||||
self.vm.add_args('-blockdev', 'null-co,size=65536,node-name=d1',
|
||||
'-device', 'virtio-blk,drive=d1,bootindex=0,loadparm=1',
|
||||
|
|
@ -102,11 +111,13 @@ class S390PxeLinux(QemuSystemTest):
|
|||
wait_for_console_pattern(self, 'Debian 4.19.146-1 (2020-09-17)')
|
||||
|
||||
def test_ip(self):
|
||||
'''Check whether the guest uses file name based on its IP address'''
|
||||
self.vm.add_args('-M', 'loadparm=3')
|
||||
self.pxelinux_launch(pl_name='0A00020F')
|
||||
wait_for_console_pattern(self, 'Linux version 5.3.7-301.fc31.s390x')
|
||||
|
||||
def test_menu(self):
|
||||
'''Check whether the boot menu works for pxelinux.cfg booting'''
|
||||
self.vm.add_args('-boot', 'menu=on,splash-time=10')
|
||||
self.pxelinux_launch(pl_name='0A00')
|
||||
wait_for_console_pattern(self, '[1] Nonexisting')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue