blob: a4715db531e751a85244c646fbf6107aff6940ae [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'
Michael Walsh046fe222019-11-08 14:33:53 -060015@{parm_list} openbmc_nickname ssh_port https_port openbmc_host openbmc_username
Michael Walsh0a3bdb42019-01-31 16:21:44 +000016... openbmc_password rest_username rest_password ipmi_username
17... ipmi_password os_host os_username os_password pdu_host pdu_username
18... pdu_password pdu_slot_no openbmc_serial_host openbmc_serial_port
19... stack_mode boot_stack boot_list max_num_tests plug_in_dir_paths
20... status_file_path openbmc_model boot_pass boot_fail ffdc_dir_path_style
21... ffdc_check ffdc_only ffdc_function_list state_change_timeout
22... power_on_timeout power_off_timeout boot_fail_threshold delete_errlogs
Michael Walsha3e7b222020-02-03 15:32:16 -060023... call_post_stack_plug do_pre_boot_plug_in_setup boot_table_path test_mode quiet debug
Michael Walshb5839d02017-04-12 16:11:20 -050024
25# Initialize each program parameter.
Michael Walsh77699612019-07-17 09:47:28 -050026${openbmc_host} ${EMPTY}
Michael Walsh046fe222019-11-08 14:33:53 -060027${ssh_port} 22
28${https_port} 443
Michael Walsh77699612019-07-17 09:47:28 -050029${openbmc_nickname} ${openbmc_host}
30${openbmc_username} root
31${openbmc_password} 0penBmc
32${rest_username} ${openbmc_username}
33${rest_password} ${openbmc_password}
34${ipmi_username} ${openbmc_username}
35${ipmi_password} ${openbmc_password}
36${os_host} ${EMPTY}
37${os_username} root
38${os_password} P@ssw0rd
39${pdu_host} ${EMPTY}
40${pdu_username} admin
41${pdu_password} admin
42${pdu_slot_no} ${EMPTY}
43${openbmc_serial_host} ${EMPTY}
44${openbmc_serial_port} ${EMPTY}
45${stack_mode} normal
46${boot_stack} ${EMPTY}
47${boot_list} ${EMPTY}
48${max_num_tests} 0
49${plug_in_dir_paths} ${EMPTY}
50${status_file_path} ${EMPTY}
51${openbmc_model} ${EMPTY}
Michael Walshb5839d02017-04-12 16:11:20 -050052# The reason boot_pass and boot_fail are parameters is that it is possible to
53# be called by a program that has already done some tests. This allows us to
54# keep the grand total.
Michael Walsh77699612019-07-17 09:47:28 -050055${boot_pass} ${0}
56${boot_fail} ${0}
57${ffdc_dir_path_style} ${EMPTY}
58${ffdc_check} ${EMPTY}
59${ffdc_only} ${0}
60${ffdc_function_list} ${EMPTY}
61${state_change_timeout} 3 mins
62${power_on_timeout} 14 mins
63${power_off_timeout} 2 mins
Michael Walshb5839d02017-04-12 16:11:20 -050064# If the number of boot failures, exceeds boot_fail_threshold, this program
65# returns non-zero.
Michael Walsh77699612019-07-17 09:47:28 -050066${boot_fail_threshold} ${0}
67${delete_errlogs} ${0}
Michael Walsh89de14a2018-10-01 16:51:37 -050068# This variable indicates whether post_stack plug-in processing should be done.
Michael Walsh77699612019-07-17 09:47:28 -050069${call_post_stack_plug} ${1}
70# do_pre_boot_plug_in_setup is only heeded when -v ffdc_only:1. Callers may
71# choose whether to run pre_boot_plug_in_setup which clears existing FFDC file
72# lists and sets new ffdc_prefix value.
73${do_pre_boot_plug_in_setup} ${1}
Michael Walsha3e7b222020-02-03 15:32:16 -060074# The path to the boot_table.json file which defines the boot requirements. This defaults to the value of
75# the BOOT_TABLE_PATH environment variable or to data/boot_table.json.
76${boot_table_path} ${None}
Michael Walsh77699612019-07-17 09:47:28 -050077${test_mode} 0
78${quiet} 0
79${debug} 0
Michael Walshb5839d02017-04-12 16:11:20 -050080
81# Flag variables.
82# test_really_running is needed by DB_Logging plug-in.
83${test_really_running} ${1}
84
Michael Walsh83f4bc72017-04-20 16:49:43 -050085
86*** Keywords ***
Michael Walsh83f4bc72017-04-20 16:49:43 -050087OBMC Boot Test
Joy Onyerikwuf4a807b2018-06-20 08:43:54 -050088 [Documentation] Run the OBMC boot test.
Michael Walsh83f4bc72017-04-20 16:49:43 -050089 [Teardown] OBMC Boot Test Teardown
Michael Walshff340002017-08-29 11:18:27 -050090 [Arguments] ${pos_arg1}=${EMPTY} &{arguments}
Michael Walsh83f4bc72017-04-20 16:49:43 -050091
George Keishing6c452de2023-09-19 03:55:13 -050092 Run Keyword And Ignore Error Redfish.Login
ganesanb80fba7e2023-04-28 17:23:42 +000093
Michael Walsh83f4bc72017-04-20 16:49:43 -050094 # Note: If I knew how to specify a keyword teardown in python, I would
95 # rename the "OBMC Boot Test Py" python function to "OBMC Boot Test" and
96 # do away with this robot keyword.
97
Michael Walshff340002017-08-29 11:18:27 -050098 Run Keyword If '${pos_arg1}' != '${EMPTY}'
99 ... Set To Dictionary ${arguments} loc_boot_stack=${pos_arg1}
100
101 OBMC Boot Test Py &{arguments}