blob: 9c9dbc689524051c3d709ffdb3237b3082779954 [file] [log] [blame]
Michael Walshb5839d02017-04-12 16:11:20 -05001*** Settings ***
2Documentation This file is resourced by obmc_boot_test.py to set initial
3... variable values, etc.
4
5Resource ../lib/openbmc_ffdc.robot
6Library ../lib/state.py
7
8Library ../lib/obmc_boot_test.py
Michael Walshff340002017-08-29 11:18:27 -05009Library Collections
Michael Walshb5839d02017-04-12 16:11:20 -050010
11*** Variables ***
12# Initialize program parameters variables.
13# Create parm_list containing all of our program parameters. This is used by
14# 'Rqprint Pgm Header'
15@{parm_list} openbmc_nickname openbmc_host openbmc_username
16... openbmc_password os_host os_username os_password pdu_host
17... pdu_username pdu_password pdu_slot_no openbmc_serial_host
18... openbmc_serial_port stack_mode boot_stack boot_list max_num_tests
19... plug_in_dir_paths status_file_path openbmc_model boot_pass boot_fail
Michael Walsh83f4bc72017-04-20 16:49:43 -050020... ffdc_dir_path_style ffdc_check ffdc_only ffdc_function_list
21... state_change_timeout power_on_timeout power_off_timeout
Michael Walsh89de14a2018-10-01 16:51:37 -050022... boot_fail_threshold delete_errlogs call_post_stack_plug test_mode
23... quiet debug
Michael Walshb5839d02017-04-12 16:11:20 -050024
25# Initialize each program parameter.
26${openbmc_host} ${EMPTY}
27${openbmc_nickname} ${openbmc_host}
28${openbmc_username} root
29${openbmc_password} 0penBmc
30${os_host} ${EMPTY}
31${os_username} root
32${os_password} P@ssw0rd
33${pdu_host} ${EMPTY}
34${pdu_username} admin
35${pdu_password} admin
36${pdu_slot_no} ${EMPTY}
37${openbmc_serial_host} ${EMPTY}
38${openbmc_serial_port} ${EMPTY}
39${stack_mode} normal
40${boot_stack} ${EMPTY}
41${boot_list} ${EMPTY}
42${max_num_tests} 0
43${plug_in_dir_paths} ${EMPTY}
44${status_file_path} ${EMPTY}
45${openbmc_model} ${EMPTY}
46# The reason boot_pass and boot_fail are parameters is that it is possible to
47# be called by a program that has already done some tests. This allows us to
48# keep the grand total.
49${boot_pass} ${0}
50${boot_fail} ${0}
51${ffdc_dir_path_style} ${EMPTY}
52${ffdc_check} ${EMPTY}
Michael Walsh83f4bc72017-04-20 16:49:43 -050053${ffdc_only} ${0}
54${ffdc_function_list} ${EMPTY}
Michael Walshb5839d02017-04-12 16:11:20 -050055${state_change_timeout} 3 mins
56${power_on_timeout} 14 mins
57${power_off_timeout} 2 mins
Michael Walshb5839d02017-04-12 16:11:20 -050058# If the number of boot failures, exceeds boot_fail_threshold, this program
59# returns non-zero.
Michael Walshd8744082017-07-27 10:41:12 -050060${boot_fail_threshold} ${0}
Michael Walshaabef1e2017-09-20 15:16:17 -050061${delete_errlogs} ${0}
Michael Walsh89de14a2018-10-01 16:51:37 -050062# This variable indicates whether post_stack plug-in processing should be done.
63${call_post_stack_plug} ${1}
Michael Walshb5839d02017-04-12 16:11:20 -050064${test_mode} 0
65${quiet} 0
66${debug} 0
67
68# Flag variables.
69# test_really_running is needed by DB_Logging plug-in.
70${test_really_running} ${1}
71
Michael Walsh83f4bc72017-04-20 16:49:43 -050072
73*** Keywords ***
Michael Walsh83f4bc72017-04-20 16:49:43 -050074OBMC Boot Test
Joy Onyerikwuf4a807b2018-06-20 08:43:54 -050075 [Documentation] Run the OBMC boot test.
Michael Walsh83f4bc72017-04-20 16:49:43 -050076 [Teardown] OBMC Boot Test Teardown
Michael Walshff340002017-08-29 11:18:27 -050077 [Arguments] ${pos_arg1}=${EMPTY} &{arguments}
Michael Walsh83f4bc72017-04-20 16:49:43 -050078
79 # Note: If I knew how to specify a keyword teardown in python, I would
80 # rename the "OBMC Boot Test Py" python function to "OBMC Boot Test" and
81 # do away with this robot keyword.
82
Michael Walshff340002017-08-29 11:18:27 -050083 Run Keyword If '${pos_arg1}' != '${EMPTY}'
84 ... Set To Dictionary ${arguments} loc_boot_stack=${pos_arg1}
85
86 OBMC Boot Test Py &{arguments}