[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 1/3] Acceptance Tests: Add default kernel params and pxebo
From: |
Wainer dos Santos Moschetta |
Subject: |
Re: [PATCH v3 1/3] Acceptance Tests: Add default kernel params and pxeboot url to the KNOWN_DISTROS collection |
Date: |
Mon, 28 Jun 2021 12:06:31 -0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 |
Hi Eric,
On 6/21/21 5:08 AM, Eric Auger wrote:
When running LinuxTests we may need to run the guest with
custom params. It is practical to store the pxeboot URL
and the default kernel params so that the
tests just need to fetch those and augment the kernel params.
Signed-off-by: Eric Auger <eric.auger@redhat.com>
---
v2 -> v3:
- add fed32 and fed33 checksums
---
tests/acceptance/avocado_qemu/__init__.py | 52 ++++++++++++++++++++++-
1 file changed, 50 insertions(+), 2 deletions(-)
diff --git a/tests/acceptance/avocado_qemu/__init__.py
b/tests/acceptance/avocado_qemu/__init__.py
index 81ac90bebb..8152420fa5 100644
--- a/tests/acceptance/avocado_qemu/__init__.py
+++ b/tests/acceptance/avocado_qemu/__init__.py
@@ -305,17 +305,59 @@ def ssh_command(self, command):
'fedora': {
'31': {
'x86_64':
- {'checksum':
'e3c1b309d9203604922d6e255c2c5d098a309c2d46215d8fc026954f3c5c27a0'},
+ {'checksum':
'e3c1b309d9203604922d6e255c2c5d098a309c2d46215d8fc026954f3c5c27a0',
+ 'pxeboot_url':
"https://archives.fedoraproject.org/pub/archive/fedora/"
+
"linux/releases/31/Everything/x86_64/os/images/pxeboot/",
+ 'kernel_params': "root=UUID=b1438b9b-2cab-4065-a99a-08a96687f73c ro
"
+ "no_timer_check net.ifnames=0 "
+ "console=tty1 console=ttyS0,115200n8"},
'aarch64':
- {'checksum':
'1e18d9c0cf734940c4b5d5ec592facaed2af0ad0329383d5639c997fdf16fe49'},
+ {'checksum':
'1e18d9c0cf734940c4b5d5ec592facaed2af0ad0329383d5639c997fdf16fe49',
+ 'pxeboot_url':
"https://archives.fedoraproject.org/pub/archive/fedora/"
+
"linux/releases/31/Everything/aarch64/os/images/pxeboot/",
+ 'kernel_params': "root=UUID=b6950a44-9f3c-4076-a9c2-355e8475b0a7 ro
"
+ "earlyprintk=pl011,0x9000000 ignore_loglevel "
+ "no_timer_check printk.time=1 rd_NO_PLYMOUTH "
+ "console=ttyAMA0 "},
'ppc64':
{'checksum':
'7c3528b85a3df4b2306e892199a9e1e43f991c506f2cc390dc4efa2026ad2f58'},
's390x':
{'checksum':
'4caaab5a434fd4d1079149a072fdc7891e354f834d355069ca982fdcaf5a122d'},
}
+ ,
+ '32': {
+ 'aarch64':
+ { 'kernel_params': "root=UUID=3df75b65-be8d-4db4-8655-14d95c0e90c5 ro
"
+ "no_timer_check net.ifnames=0 console=tty1 "
+ "console=ttyS0,115200n8 ",
Nit: indentation ^
+ 'checksum':
'b367755c664a2d7a26955bbfff985855adfa2ca15e908baf15b4b176d68d3967',
+ 'pxeboot_url':
"https://ftp.lip6.fr/ftp/pub/linux/distributions/fedora/releases/"
Maybe use dl.fedoraproject.org instead of a mirror server?
+ "32/Server/aarch64/os/images/pxeboot/"},
+ }
+ ,
+ '33': {
+ 'aarch64':
+ { 'kernel_params': "root=UUID=d20b3ffa-6397-4a63-a734-1126a0208f8a ro
"
+ "no_timer_check net.ifnames=0 console=tty1 "
+ "console=ttyS0,115200n8 console=tty0 ",
+ 'checksum':
'e7f75cdfd523fe5ac2ca9eeece68edc1a81f386a17f969c1d1c7c87031008a6b',
+ 'pxeboot_url':
"https://ftp.lip6.fr/ftp/pub/linux/distributions/fedora/releases/"
Likewise.
+ "33/Server/aarch64/os/images/pxeboot/"},
+ }
}
}
+def get_known_distro_kernel_params(distro, distro_version, arch):
+ try:
+ return
KNOWN_DISTROS.get(distro).get(distro_version).get(arch).get('kernel_params')
+ except AttributeError:
+ return None
+
+def get_known_distro_pxeboot_url(distro, distro_version, arch):
+ try:
+ return
KNOWN_DISTROS.get(distro).get(distro_version).get(arch).get('pxeboot_url')
+ except AttributeError:
+ return None
def get_known_distro_checksum(distro, distro_version, arch):
try:
@@ -449,6 +491,12 @@ def set_up_cloudinit(self, ssh_pubkey=None):
cloudinit_iso = self.prepare_cloudinit(ssh_pubkey)
self.vm.add_args('-drive', 'file=%s,format=raw' % cloudinit_iso)
+ def get_default_kernel_params(self):
+ return get_known_distro_kernel_params(self.distro,
self.distro_version, self.arch)
+
+ def get_pxeboot_url(self):
+ return get_known_distro_pxeboot_url(self.distro, self.distro_version,
self.arch)
+
As the KNOWN_DISTROS grows, more loosely methods will be created in the
avocado_qemu/__init__.py file.
I refactored the code so that KNOWN_DISTROS and related methods are
packaged in a class. See in:
https://github.com/wainersm/qemu/tree/eauger_avocado-qemu-v3-refactor
Maybe you could incorporate that in your series? Otherwise I can send as
a follow up series. Whatever you prefer.
Thanks!
- Wainer
def launch_and_wait(self, set_up_ssh_connection=True):
self.vm.set_console()
self.vm.launch()