[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 4/6] tests/boot_linux_console: add extract_from_rpm method
From: |
Liam Merwick |
Subject: |
[PATCH v2 4/6] tests/boot_linux_console: add extract_from_rpm method |
Date: |
Wed, 5 Feb 2020 14:56:03 +0000 |
Add a method to extract a specified file from an RPM to the test's
working directory and return the path to the extracted file.
Signed-off-by: Liam Merwick <address@hidden>
Reviewed-by: Stefano Garzarella <address@hidden>
Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
---
tests/acceptance/boot_linux_console.py | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/tests/acceptance/boot_linux_console.py
b/tests/acceptance/boot_linux_console.py
index e9375590bc1c..6a473363a122 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -51,6 +51,22 @@ class BootLinuxConsole(Test):
os.chdir(cwd)
return self.workdir + path
+ def extract_from_rpm(self, rpm, path):
+ """
+ Extracts a file from an RPM package into the test workdir.
+
+ :param rpm: path to the rpm archive
+ :param path: path within the rpm archive of the file to be extracted
+ needs to be a relative path (starting with './') because
+ cpio(1), which is used to extract the file, expects that.
+ :returns: path of the extracted file
+ """
+ cwd = os.getcwd()
+ os.chdir(self.workdir)
+ process.run("rpm2cpio %s | cpio -id %s" % (rpm, path), shell=True)
+ os.chdir(cwd)
+ return os.path.normpath(os.path.join(self.workdir, path))
+
def do_test_x86_64_machine(self):
"""
Common routine to boot an x86_64 guest.
--
1.8.3.1
[PATCH v2 4/6] tests/boot_linux_console: add extract_from_rpm method,
Liam Merwick <=
Re: [PATCH v2 0/6] tests/boot_linux_console: add extra boot acceptance tests, Philippe Mathieu-Daudé, 2020/02/06