Create REST URL file with BMC firmware version.
Filename contains BMC firmware version before and after
code update.
Resolves openbmc/openbmc-test-automation#709
Change-Id: Iefb5113843cd8d733e626ae7de6d559b7905d7cc
Signed-off-by: Rahul Maheshwari <rahulmaheshwari@in.ibm.com>
diff --git a/extended/code_update/update_bmc.robot b/extended/code_update/update_bmc.robot
index a1e0f01..d8a9b69 100644
--- a/extended/code_update/update_bmc.robot
+++ b/extended/code_update/update_bmc.robot
@@ -68,9 +68,13 @@
Check URLs Before Code Update
[Documentation] Check available URLs before code update.
[Tags] Check_URLs_Before_Code_Update
+
${url_list}= Get URL List ${OPENBMC_BASE_URI}
Set Global Variable ${URL_BEFORE_CU} ${url_list}
+ ${bmc_version}= Get BMC Version
+ Set Suite Variable ${bmc_version_before} ${bmc_version}
+
Initiate Code Update BMC
[Documentation] Initiate a code update on the BMC.
[Tags] Initiate_Code_Update_BMC
@@ -105,6 +109,13 @@
[Documentation] Compare URLs before and after code update.
[Tags] Compare_URLs_Before_And_After_Code_Update
+ ${bmc_version}= Get BMC Version
+ Set Suite Variable ${bmc_version_after} ${bmc_version}
+
+ # Exit test for same firmware version.
+ Pass Execution If '${bmc_version_before}' == '${bmc_version_after}'
+ ... Same BMC firmware version found
+
${url_after_cu}= Get URL List ${OPENBMC_BASE_URI}
Compare URL List After Code Update ${URL_BEFORE_CU} ${url_after_cu}
@@ -188,10 +199,19 @@
Return From Keyword If '${REST_URL_FILE_PATH}' == '${EMPTY}'
+ # Create file with BMC firmware version before and after code update.
+ # i.e. <Before_Version>--<After_Version>
+ # Example v1.99.6-141-ge662190--v1.99.6-141-ge664242
+
+ ${file_name}= Catenate SEPARATOR=--
+ ... ${bmc_version_before} ${bmc_version_after}
+ ${REST_URL_FILE}= Catenate ${REST_URL_FILE_PATH}/${file_name}
+ Create File ${REST_URL_FILE} URL Removed${\n}
+
Return From Keyword If
... ${url_removed_list} == [] and ${url_added_list} == []
- Create File ${REST_URL_FILE_PATH} URL Removed${\n}
- Append To File ${REST_URL_FILE_PATH} [${url_removed_list}]
- Append To File ${REST_URL_FILE_PATH} ${\n}URL Added${\n}
- Append To File ${REST_URL_FILE_PATH} [${url_added_list}]
+ Create File ${REST_URL_FILE} URL Removed${\n}
+ Append To File ${REST_URL_FILE} [${url_removed_list}]
+ Append To File ${REST_URL_FILE} ${\n}URL Added${\n}
+ Append To File ${REST_URL_FILE} [${url_added_list}]
diff --git a/lib/utils.robot b/lib/utils.robot
index 9e5b5ce..a88879b 100755
--- a/lib/utils.robot
+++ b/lib/utils.robot
@@ -962,3 +962,14 @@
${state}= Read Attribute ${LED_GROUPS_URI}${led_name} Asserted
[Return] ${state}
+
+
+Get BMC Version
+ [Documentation] Returns BMC version from /etc/os-release.
+ ... e.g. "v1.99.6-141-ge662190"
+
+ Open Connection And Log In
+ ${cmd}= Set Variable grep ^VERSION_ID= /etc/os-release | cut -f 2 -d '='
+ ${output}= Execute Command On BMC ${cmd}
+ [Return] ${output}
+