Move keywords to lib/utils.robot
This commit moves keywords in update_mac.robot to lib/utils.robot.
These keywords can be now reused in other scripts where this
functionality is needed.
Change-Id: I0d34aab12aa69242ed022eb73aa1eea5ce61bab6
Signed-off-by: Sunil M <sunilmam@us.ibm.com>
diff --git a/lib/utils.robot b/lib/utils.robot
index 64afb23..fd376c2 100755
--- a/lib/utils.robot
+++ b/lib/utils.robot
@@ -2,12 +2,14 @@
Resource ../lib/resource.txt
Resource ../lib/rest_client.robot
Resource ../lib/connection_client.robot
+Resource ../extended/obmc_boot_test_resource.robot
Library DateTime
Library Process
Library OperatingSystem
Library gen_print.py
Library gen_robot_print.py
Library gen_cmd.py
+Library gen_robot_keyword.py
*** Variables ***
${SYSTEM_SHUTDOWN_TIME} ${5}
@@ -33,6 +35,8 @@
${BOOT_COUNT} ${0}
${count} ${0}
${devicetree_base} /sys/firmware/devicetree/base/model
+# MAC input from user.
+${MAC_ADDRESS} ${EMPTY}
# Initialize default debug value to 0.
${DEBUG} ${0}
@@ -915,6 +919,30 @@
# Set BOOT_TIME variable to current boot time.
Set Global Variable ${BOOT_COUNT} ${count}
+Check And Reset MAC
+ [Documentation] Update BMC with user input MAC address.
+ [Arguments] ${mac_address}=${MAC_ADDRESS}
+
+ # Description of argument(s):
+ # mac_address The mac address (e.g. 00:01:6c:80:02:28).
+
+ Should Not Be Empty ${mac_address}
+ Open Connection And Log In
+ ${bmc_mac_addr}= Execute Command On BMC cat /sys/class/net/eth0/address
+ Run Keyword If '${mac_address}' != '${bmc_mac_addr}'
+ ... Set MAC Address
+
+Set MAC Address
+ [Documentation] Update eth0 with input MAC address.
+ [Arguments] ${mac_address}=${MAC_ADDRESS}
+
+ # Description of argument(s):
+ # mac_address The mac address (e.g. 00:01:6c:80:02:28).
+ Write fw_setenv ethaddr ${mac_address}
+ Run Key U OBMC Boot Test \ OBMC Reboot (off)
+ ${bmc_mac_addr}= Execute Command On BMC cat /sys/class/net/eth0/address
+ Should Be Equal ${bmc_mac_addr} ${mac_address}
+
###############################################################################
Delete Error logs
[Documentation] Delete error logs.