blob: e840a7358782ccd9eaa72277ce92c3bf350f4b45 [file] [log] [blame]
*** Settings ***
Documentation Module for capturing BMC serial output
Library Telnet newline=LF
Library OperatingSystem
Library Collections
Library String
*** Keywords ***
Open Telnet Connection To BMC Serial Console
[Documentation] Open telnet connection session to BMC serial console
... The login prompt expected, for example, for barreleye
... is "barreleye login:".
[Arguments] ${i_host}=${OPENBMC_SERIAL_HOST}
... ${i_port}=${OPENBMC_SERIAL_PORT}
... ${i_model}=${OPENBMC_MODEL}
# Description of argument(s):
# i_host The host name or IP of the serial console.
# i_port The port of the serial console.
# i_model The path to the system data, i.e. "./data/Witherspoon.py".
${prompt_string}= Remove String ${i_model} ./data/ .py
${prompt_string}= Convert To Lowercase ${prompt_string} login:
Telnet.Open Connection
... ${i_host} port=${i_port} prompt=#
Telnet.Set Newline \n
Telnet.Set Newline CRLF
Telnet.Write \n
Telnet.Login ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD}
... login_prompt=${prompt_string} password_prompt=Password:
Telnet.Set Timeout 30 minute 30 seconds
Read and Log BMC Serial Console Output
[Documentation] Reads everything that is currently available
... in the output.
${bmc_serial_log}= Telnet.Read
Log ${bmc_serial_log}
Execute Command On Serial Console
[Documentation] Execute a command on the BMC serial console.
[Arguments] ${command_string}
# Description of argument(s):
# command The command to execute on the BMC.
Open Telnet Connection To BMC Serial Console
Telnet.Write \n
Telnet.Execute Command ${command_string}
Close Serial Console Connection
Close Serial Console Connection
[Documentation] Log out of the BMC and close telnet.
Execute Command On Serial Console exit
Telnet.Close Connection