From 90033cc2eef54dd6f92ccb5bb8e559bb4635ce59 Mon Sep 17 00:00:00 2001 From: Gregory Giguashvili Date: Wed, 1 May 2024 09:46:03 +0300 Subject: [PATCH 1/3] Implement MicroShift RPM verification keyword --- test/resources/microshift-rpm.resource | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/test/resources/microshift-rpm.resource b/test/resources/microshift-rpm.resource index d0936c09b8..fef1520d1d 100644 --- a/test/resources/microshift-rpm.resource +++ b/test/resources/microshift-rpm.resource @@ -84,3 +84,13 @@ Get Version Of MicroShift RPM # 4.15.0_0.nightly_2023_11_01_080931_20231103152813_3f5593fca_dirty-1.el9.x86_64 ${version_string}= Strip String ${version_string_raw} RETURN ${version_string} + +Verify MicroShift RPM Install + [Documentation] Run 'rpm -V' package verification command + ... on all the installed MicroShift RPM packages. + ${stdout} ${stderr} ${rc}= SSHLibrary.Execute Command + ... rpm -qa microshift\* | xargs -I {} bash -c 'echo {}; sudo rpm -V {}' + ... sudo=True return_rc=True return_stdout=True return_stderr=True + Log ${stdout} + Log ${stderr} + Should Be Equal As Integers 0 ${rc} From a12e487812800a796ad9d126b8388a0acbd6a119 Mon Sep 17 00:00:00 2001 From: Gregory Giguashvili Date: Wed, 1 May 2024 09:46:25 +0300 Subject: [PATCH 2/3] Add MicroShift RPM verification to selected tests --- test/suites/optional/multus.robot | 2 ++ test/suites/optional/olm.robot | 2 ++ test/suites/standard1/version.robot | 1 + 3 files changed, 5 insertions(+) diff --git a/test/suites/optional/multus.robot b/test/suites/optional/multus.robot index a8add88006..f4d1283f79 100644 --- a/test/suites/optional/multus.robot +++ b/test/suites/optional/multus.robot @@ -4,6 +4,7 @@ Documentation Tests for Multus and Bridge plugin on MicroShift Resource ../../resources/common.resource Resource ../../resources/multus.resource Resource ../../resources/microshift-process.resource +Resource ../../resources/microshift-rpm.resource Suite Setup Setup Suite Teardown Teardown Suite With Namespace @@ -116,6 +117,7 @@ Setup Should Be True ${len}>=2 Set Suite Variable ${MACVLAN_MASTER} ${enps[0]} Set Suite Variable ${IPVLAN_MASTER} ${enps[1]} + Verify MicroShift RPM Install Template And Create NAD And Pod [Documentation] Template NAD and create it along with Pod diff --git a/test/suites/optional/olm.robot b/test/suites/optional/olm.robot index c882756010..42db9fb212 100644 --- a/test/suites/optional/olm.robot +++ b/test/suites/optional/olm.robot @@ -3,6 +3,7 @@ Documentation Operator Lifecycle Manager on MicroShift Resource ../../resources/common.resource Resource ../../resources/microshift-process.resource +Resource ../../resources/microshift-rpm.resource Suite Setup Setup Suite Teardown Teardown @@ -44,6 +45,7 @@ Setup Check Required Env Variables Login MicroShift Host Setup Kubeconfig + Verify MicroShift RPM Install Teardown [Documentation] Test suite teardown diff --git a/test/suites/standard1/version.robot b/test/suites/standard1/version.robot index 3b4fc1afa1..2d8dfb0e65 100644 --- a/test/suites/standard1/version.robot +++ b/test/suites/standard1/version.robot @@ -68,6 +68,7 @@ Setup Login MicroShift Host Setup Kubeconfig Read Expected Versions + Verify MicroShift RPM Install Teardown [Documentation] Test suite teardown From e0fbc3a6cf5f87be0053ee5cbc3eb6461561251d Mon Sep 17 00:00:00 2001 From: Gregory Giguashvili Date: Wed, 1 May 2024 15:32:15 +0300 Subject: [PATCH 3/3] Do not check modification times on ostree systems --- test/resources/microshift-rpm.resource | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/test/resources/microshift-rpm.resource b/test/resources/microshift-rpm.resource index fef1520d1d..de00c78899 100644 --- a/test/resources/microshift-rpm.resource +++ b/test/resources/microshift-rpm.resource @@ -88,8 +88,17 @@ Get Version Of MicroShift RPM Verify MicroShift RPM Install [Documentation] Run 'rpm -V' package verification command ... on all the installed MicroShift RPM packages. + # The ostree-based file system does not preserve modification + # times of the installed files + ${is_ostree}= Is System OSTree + IF ${is_ostree} + ${nomtime}= Set Variable --nomtime + ELSE + ${nomtime}= Set Variable ${EMPTY} + END + ${stdout} ${stderr} ${rc}= SSHLibrary.Execute Command - ... rpm -qa microshift\* | xargs -I {} bash -c 'echo {}; sudo rpm -V {}' + ... rpm -qa microshift\* | xargs -I {} bash -c 'echo {}; sudo rpm -V ${nomtime} {}' ... sudo=True return_rc=True return_stdout=True return_stderr=True Log ${stdout} Log ${stderr}