On 30/01/2020 12:05, Stefano Garzarella wrote:
On Mon, Jan 27, 2020 at 04:36:33PM +0000, Liam Merwick wrote:
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 <liam.merw...@oracle.com>
---
  tests/acceptance/boot_linux_console.py | 14 ++++++++++++++
  1 file changed, 14 insertions(+)

diff --git a/tests/acceptance/boot_linux_console.py 
b/tests/acceptance/boot_linux_console.py
index 43bc928b03a2..6af19ae3b14a 100644
--- a/tests/acceptance/boot_linux_console.py
+++ b/tests/acceptance/boot_linux_console.py
@@ -51,6 +51,20 @@ class BootLinuxConsole(Test):
          os.chdir(cwd)
          return self.workdir + path
+ def extract_from_rpm(self, rpm, path):
+        """
+        Extracts a file from a 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
+        :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 self.workdir + '/' + path
                                   ^
     Is the extra slash needed? (just because the extract_from_deb()
     doesn't put it)



Yes, I needed to put it in there because the 'path' passed in for
processing by cpio is a relative patch unlike the deb arg so it
couldn't be just appended to 'self.workdir' which doesn't end in a '/'.

Regards,
Liam


Anyway this patch LGTM:

Reviewed-by: Stefano Garzarella <sgarz...@redhat.com>

+
      def do_test_x86_64_machine(self):
          """
          :avocado: tags=arch:x86_64
--
1.8.3.1




Reply via email to