xref: /openbmc/openbmc-test-automation/lib/boot_utils.robot (revision 03e6339c15fb69c5ca06fa2fc5023bf92ccd0ede)
1800b3922SMichael Walsh*** Settings ***
2800b3922SMichael WalshDocumentation  This module provides one wrapper keyword for each kind of boot
3800b3922SMichael Walsh...            test supported by obmc_boot_test.py.
4800b3922SMichael Walsh
5800b3922SMichael WalshResource  ../extended/obmc_boot_test_resource.robot
6800b3922SMichael Walsh
7800b3922SMichael Walsh*** Keywords ***
8800b3922SMichael WalshREST Power On
9800b3922SMichael Walsh    [Documentation]  Do "REST Power On" boot test.
10ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
11800b3922SMichael Walsh
12ff340006SMichael Walsh    # Description of argument(s):
13ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
14ff340006SMichael Walsh    #                               specified in the boot_stack is only
15ff340006SMichael Walsh    #                               performed if the machine is not already in
16ff340006SMichael Walsh    #                               the state that would normally result from
17ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
18ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
19ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
20ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
21ff340006SMichael Walsh    #                               you simply want the machine in a desired
22ff340006SMichael Walsh    #                               state.  The default value is the global
23ff340006SMichael Walsh    #                               value of "${stack_mode}"
24ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
25ff340006SMichael Walsh    #                               keyword will print only essential
26ff340006SMichael Walsh    #                               information.  The default value is the
27ff340006SMichael Walsh    #                               global value of "${quiet}"
28ff340006SMichael Walsh
29ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=REST Power On
30ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
31ff340006SMichael Walsh    Run Key U  ${cmd_buf}
32800b3922SMichael Walsh
33800b3922SMichael Walsh
34800b3922SMichael WalshIPMI Power On
35800b3922SMichael Walsh    [Documentation]  Do "IPMI Power On" boot test.
36ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
37800b3922SMichael Walsh
38ff340006SMichael Walsh    # Description of argument(s):
39ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
40ff340006SMichael Walsh    #                               specified in the boot_stack is only
41ff340006SMichael Walsh    #                               performed if the machine is not already in
42ff340006SMichael Walsh    #                               the state that would normally result from
43ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
44ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
45ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
46ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
47ff340006SMichael Walsh    #                               you simply want the machine in a desired
48ff340006SMichael Walsh    #                               state.  The default value is the global
49ff340006SMichael Walsh    #                               value of "${stack_mode}"
50ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
51ff340006SMichael Walsh    #                               keyword will print only essential
52ff340006SMichael Walsh    #                               information.  The default value is the
53ff340006SMichael Walsh    #                               global value of "${quiet}"
54ff340006SMichael Walsh
55ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=IPMI Power On
56ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
57ff340006SMichael Walsh    Run Key U  ${cmd_buf}
58800b3922SMichael Walsh
59800b3922SMichael Walsh
60800b3922SMichael WalshREST Power Off
61800b3922SMichael Walsh    [Documentation]  Do "REST Power Off" boot test.
62ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
63800b3922SMichael Walsh
64ff340006SMichael Walsh    # Description of argument(s):
65ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
66ff340006SMichael Walsh    #                               specified in the boot_stack is only
67ff340006SMichael Walsh    #                               performed if the machine is not already in
68ff340006SMichael Walsh    #                               the state that would normally result from
69ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
70ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
71ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
72ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
73ff340006SMichael Walsh    #                               you simply want the machine in a desired
74ff340006SMichael Walsh    #                               state.  The default value is the global
75ff340006SMichael Walsh    #                               value of "${stack_mode}"
76ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
77ff340006SMichael Walsh    #                               keyword will print only essential
78ff340006SMichael Walsh    #                               information.  The default value is the
79ff340006SMichael Walsh    #                               global value of "${quiet}"
80ff340006SMichael Walsh
81ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=REST Power Off
82ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
83ff340006SMichael Walsh    Run Key U  ${cmd_buf}
84800b3922SMichael Walsh
85800b3922SMichael Walsh
86245db7c3SMichael WalshREST Hard Power Off
87245db7c3SMichael Walsh    [Documentation]  Do "REST Hard Power Off" boot test.
88245db7c3SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
89245db7c3SMichael Walsh
90245db7c3SMichael Walsh    # Description of argument(s):
91245db7c3SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
92245db7c3SMichael Walsh    #                               specified in the boot_stack is only
93245db7c3SMichael Walsh    #                               performed if the machine is not already in
94245db7c3SMichael Walsh    #                               the state that would normally result from
95245db7c3SMichael Walsh    #                               running the given boot test.  Otherwise,
96245db7c3SMichael Walsh    #                               the test is skipped.  If stack_mode is set
97245db7c3SMichael Walsh    #                               to "normal", all tests from the boot_stack
98245db7c3SMichael Walsh    #                               are performed.  "skip" mode is useful when
99245db7c3SMichael Walsh    #                               you simply want the machine in a desired
100245db7c3SMichael Walsh    #                               state.  The default value is the global
101245db7c3SMichael Walsh    #                               value of "${stack_mode}"
102245db7c3SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
103245db7c3SMichael Walsh    #                               keyword will print only essential
104245db7c3SMichael Walsh    #                               information.  The default value is the
105245db7c3SMichael Walsh    #                               global value of "${quiet}"
106245db7c3SMichael Walsh
107245db7c3SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=REST Hard Power Off
108245db7c3SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
109245db7c3SMichael Walsh    Run Key U  ${cmd_buf}
110245db7c3SMichael Walsh
111245db7c3SMichael Walsh
112800b3922SMichael WalshIPMI Power Off
113800b3922SMichael Walsh    [Documentation]  Do "IPMI Power Off" boot test.
114ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
115800b3922SMichael Walsh
116ff340006SMichael Walsh    # Description of argument(s):
117ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
118ff340006SMichael Walsh    #                               specified in the boot_stack is only
119ff340006SMichael Walsh    #                               performed if the machine is not already in
120ff340006SMichael Walsh    #                               the state that would normally result from
121ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
122ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
123ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
124ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
125ff340006SMichael Walsh    #                               you simply want the machine in a desired
126ff340006SMichael Walsh    #                               state.  The default value is the global
127ff340006SMichael Walsh    #                               value of "${stack_mode}"
128ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
129ff340006SMichael Walsh    #                               keyword will print only essential
130ff340006SMichael Walsh    #                               information.  The default value is the
131ff340006SMichael Walsh    #                               global value of "${quiet}"
132ff340006SMichael Walsh
133ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=IPMI Power Off
134ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
135ff340006SMichael Walsh    Run Key U  ${cmd_buf}
136800b3922SMichael Walsh
137800b3922SMichael Walsh
138800b3922SMichael WalshIPMI Power Soft
139800b3922SMichael Walsh    [Documentation]  Do "IPMI Power Soft" boot test.
140ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
141800b3922SMichael Walsh
142ff340006SMichael Walsh    # Description of argument(s):
143ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
144ff340006SMichael Walsh    #                               specified in the boot_stack is only
145ff340006SMichael Walsh    #                               performed if the machine is not already in
146ff340006SMichael Walsh    #                               the state that would normally result from
147ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
148ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
149ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
150ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
151ff340006SMichael Walsh    #                               you simply want the machine in a desired
152ff340006SMichael Walsh    #                               state.  The default value is the global
153ff340006SMichael Walsh    #                               value of "${stack_mode}"
154ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
155ff340006SMichael Walsh    #                               keyword will print only essential
156ff340006SMichael Walsh    #                               information.  The default value is the
157ff340006SMichael Walsh    #                               global value of "${quiet}"
158ff340006SMichael Walsh
159ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=IPMI Power Soft
160ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
161ff340006SMichael Walsh    Run Key U  ${cmd_buf}
162800b3922SMichael Walsh
163800b3922SMichael Walsh
164800b3922SMichael WalshHost Power Off
165800b3922SMichael Walsh    [Documentation]  Do "Host Power Off" boot test.
166ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
167800b3922SMichael Walsh
168ff340006SMichael Walsh    # Description of argument(s):
169ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
170ff340006SMichael Walsh    #                               specified in the boot_stack is only
171ff340006SMichael Walsh    #                               performed if the machine is not already in
172ff340006SMichael Walsh    #                               the state that would normally result from
173ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
174ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
175ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
176ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
177ff340006SMichael Walsh    #                               you simply want the machine in a desired
178ff340006SMichael Walsh    #                               state.  The default value is the global
179ff340006SMichael Walsh    #                               value of "${stack_mode}"
180ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
181ff340006SMichael Walsh    #                               keyword will print only essential
182ff340006SMichael Walsh    #                               information.  The default value is the
183ff340006SMichael Walsh    #                               global value of "${quiet}"
184ff340006SMichael Walsh
185ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=Host Power Off
186ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
187ff340006SMichael Walsh    Run Key U  ${cmd_buf}
188800b3922SMichael Walsh
189800b3922SMichael Walsh
190800b3922SMichael WalshAPOR
191800b3922SMichael Walsh    [Documentation]  Do "APOR" boot test.
192ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
193800b3922SMichael Walsh
194ff340006SMichael Walsh    # Description of argument(s):
195ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
196ff340006SMichael Walsh    #                               specified in the boot_stack is only
197ff340006SMichael Walsh    #                               performed if the machine is not already in
198ff340006SMichael Walsh    #                               the state that would normally result from
199ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
200ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
201ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
202ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
203ff340006SMichael Walsh    #                               you simply want the machine in a desired
204ff340006SMichael Walsh    #                               state.  The default value is the global
205ff340006SMichael Walsh    #                               value of "${stack_mode}"
206ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
207ff340006SMichael Walsh    #                               keyword will print only essential
208ff340006SMichael Walsh    #                               information.  The default value is the
209ff340006SMichael Walsh    #                               global value of "${quiet}"
210ff340006SMichael Walsh
211ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=APOR
212ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
213ff340006SMichael Walsh    Run Key U  ${cmd_buf}
214800b3922SMichael Walsh
215800b3922SMichael Walsh
216800b3922SMichael WalshOBMC Reboot (run)
217800b3922SMichael Walsh    [Documentation]  Do "OBMC Reboot (run)" boot test.
218ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
219800b3922SMichael Walsh
220ff340006SMichael Walsh    # Description of argument(s):
221ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
222ff340006SMichael Walsh    #                               specified in the boot_stack is only
223ff340006SMichael Walsh    #                               performed if the machine is not already in
224ff340006SMichael Walsh    #                               the state that would normally result from
225ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
226ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
227ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
228ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
229ff340006SMichael Walsh    #                               you simply want the machine in a desired
230ff340006SMichael Walsh    #                               state.  The default value is the global
231ff340006SMichael Walsh    #                               value of "${stack_mode}"
232ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
233ff340006SMichael Walsh    #                               keyword will print only essential
234ff340006SMichael Walsh    #                               information.  The default value is the
235ff340006SMichael Walsh    #                               global value of "${quiet}"
236ff340006SMichael Walsh
237ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=OBMC Reboot (run)
238ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
239ff340006SMichael Walsh    Run Key U  ${cmd_buf}
240800b3922SMichael Walsh
241*03e6339cSMichael Walsh
242*03e6339cSMichael WalshREST OBMC Reboot (run)
243*03e6339cSMichael Walsh    [Documentation]  Do "REST OBMC Reboot (run)" boot test.
244*03e6339cSMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
245*03e6339cSMichael Walsh
246*03e6339cSMichael Walsh    # Description of argument(s):
247*03e6339cSMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
248*03e6339cSMichael Walsh    #                               specified in the boot_stack is only
249*03e6339cSMichael Walsh    #                               performed if the machine is not already in
250*03e6339cSMichael Walsh    #                               the state that would normally result from
251*03e6339cSMichael Walsh    #                               running the given boot test.  Otherwise,
252*03e6339cSMichael Walsh    #                               the test is skipped.  If stack_mode is set
253*03e6339cSMichael Walsh    #                               to "normal", all tests from the boot_stack
254*03e6339cSMichael Walsh    #                               are performed.  "skip" mode is useful when
255*03e6339cSMichael Walsh    #                               you simply want the machine in a desired
256*03e6339cSMichael Walsh    #                               state.  The default value is the global
257*03e6339cSMichael Walsh    #                               value of "${stack_mode}"
258*03e6339cSMichael Walsh    # quiet                         If this parameter is set to ${1}, this
259*03e6339cSMichael Walsh    #                               keyword will print only essential
260*03e6339cSMichael Walsh    #                               information.  The default value is the
261*03e6339cSMichael Walsh    #                               global value of "${quiet}"
262*03e6339cSMichael Walsh
263*03e6339cSMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test
264*03e6339cSMichael Walsh    ...  \ loc_boot_stack=REST OBMC Reboot (run)
265*03e6339cSMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
266*03e6339cSMichael Walsh    Run Key U  ${cmd_buf}
267800b3922SMichael Walsh
268800b3922SMichael Walsh
269800b3922SMichael WalshOBMC Reboot (off)
270800b3922SMichael Walsh    [Documentation]  Do "OBMC Reboot (off)" boot test.
271ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
272800b3922SMichael Walsh
273ff340006SMichael Walsh    # Description of argument(s):
274ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
275ff340006SMichael Walsh    #                               specified in the boot_stack is only
276ff340006SMichael Walsh    #                               performed if the machine is not already in
277ff340006SMichael Walsh    #                               the state that would normally result from
278ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
279ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
280ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
281ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
282ff340006SMichael Walsh    #                               you simply want the machine in a desired
283ff340006SMichael Walsh    #                               state.  The default value is the global
284ff340006SMichael Walsh    #                               value of "${stack_mode}"
285ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
286ff340006SMichael Walsh    #                               keyword will print only essential
287ff340006SMichael Walsh    #                               information.  The default value is the
288ff340006SMichael Walsh    #                               global value of "${quiet}"
289ff340006SMichael Walsh
290ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=OBMC Reboot (off)
291ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
292ff340006SMichael Walsh    Run Key U  ${cmd_buf}
293800b3922SMichael Walsh
294*03e6339cSMichael Walsh
295*03e6339cSMichael WalshREST OBMC Reboot (off)
296*03e6339cSMichael Walsh    [Documentation]  Do "REST OBMC Reboot (off)" boot test.
297*03e6339cSMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
298*03e6339cSMichael Walsh
299*03e6339cSMichael Walsh    # Description of argument(s):
300*03e6339cSMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
301*03e6339cSMichael Walsh    #                               specified in the boot_stack is only
302*03e6339cSMichael Walsh    #                               performed if the machine is not already in
303*03e6339cSMichael Walsh    #                               the state that would normally result from
304*03e6339cSMichael Walsh    #                               running the given boot test.  Otherwise,
305*03e6339cSMichael Walsh    #                               the test is skipped.  If stack_mode is set
306*03e6339cSMichael Walsh    #                               to "normal", all tests from the boot_stack
307*03e6339cSMichael Walsh    #                               are performed.  "skip" mode is useful when
308*03e6339cSMichael Walsh    #                               you simply want the machine in a desired
309*03e6339cSMichael Walsh    #                               state.  The default value is the global
310*03e6339cSMichael Walsh    #                               value of "${stack_mode}"
311*03e6339cSMichael Walsh    # quiet                         If this parameter is set to ${1}, this
312*03e6339cSMichael Walsh    #                               keyword will print only essential
313*03e6339cSMichael Walsh    #                               information.  The default value is the
314*03e6339cSMichael Walsh    #                               global value of "${quiet}"
315*03e6339cSMichael Walsh
316*03e6339cSMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test
317*03e6339cSMichael Walsh    ...  \ loc_boot_stack=REST OBMC Reboot (off)
318*03e6339cSMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
319*03e6339cSMichael Walsh    Run Key U  ${cmd_buf}
320800b3922SMichael Walsh
321800b3922SMichael Walsh
322800b3922SMichael WalshPDU AC Cycle (run)
323800b3922SMichael Walsh    [Documentation]  Do "PDU AC Cycle (run)" boot test.
324ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
325800b3922SMichael Walsh
326ff340006SMichael Walsh    # Description of argument(s):
327ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
328ff340006SMichael Walsh    #                               specified in the boot_stack is only
329ff340006SMichael Walsh    #                               performed if the machine is not already in
330ff340006SMichael Walsh    #                               the state that would normally result from
331ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
332ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
333ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
334ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
335ff340006SMichael Walsh    #                               you simply want the machine in a desired
336ff340006SMichael Walsh    #                               state.  The default value is the global
337ff340006SMichael Walsh    #                               value of "${stack_mode}"
338ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
339ff340006SMichael Walsh    #                               keyword will print only essential
340ff340006SMichael Walsh    #                               information.  The default value is the
341ff340006SMichael Walsh    #                               global value of "${quiet}"
342ff340006SMichael Walsh
343ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=PDU AC Cycle (run)
344ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
345ff340006SMichael Walsh    Run Key U  ${cmd_buf}
346800b3922SMichael Walsh
347800b3922SMichael Walsh
348800b3922SMichael WalshPDU AC Cycle (off)
349800b3922SMichael Walsh    [Documentation]  Do "PDU AC Cycle (off)" boot test.
350ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
351800b3922SMichael Walsh
352ff340006SMichael Walsh    # Description of argument(s):
353ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
354ff340006SMichael Walsh    #                               specified in the boot_stack is only
355ff340006SMichael Walsh    #                               performed if the machine is not already in
356ff340006SMichael Walsh    #                               the state that would normally result from
357ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
358ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
359ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
360ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
361ff340006SMichael Walsh    #                               you simply want the machine in a desired
362ff340006SMichael Walsh    #                               state.  The default value is the global
363ff340006SMichael Walsh    #                               value of "${stack_mode}"
364ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
365ff340006SMichael Walsh    #                               keyword will print only essential
366ff340006SMichael Walsh    #                               information.  The default value is the
367ff340006SMichael Walsh    #                               global value of "${quiet}"
368ff340006SMichael Walsh
369ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=PDU AC Cycle (off)
370ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
371ff340006SMichael Walsh    Run Key U  ${cmd_buf}
372800b3922SMichael Walsh
373800b3922SMichael Walsh
374800b3922SMichael WalshIPMI MC Reset Warm (run)
375800b3922SMichael Walsh    [Documentation]  Do "IPMI MC Reset Warm (run)" boot test.
376ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
377800b3922SMichael Walsh
378ff340006SMichael Walsh    # Description of argument(s):
379ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
380ff340006SMichael Walsh    #                               specified in the boot_stack is only
381ff340006SMichael Walsh    #                               performed if the machine is not already in
382ff340006SMichael Walsh    #                               the state that would normally result from
383ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
384ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
385ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
386ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
387ff340006SMichael Walsh    #                               you simply want the machine in a desired
388ff340006SMichael Walsh    #                               state.  The default value is the global
389ff340006SMichael Walsh    #                               value of "${stack_mode}"
390ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
391ff340006SMichael Walsh    #                               keyword will print only essential
392ff340006SMichael Walsh    #                               information.  The default value is the
393ff340006SMichael Walsh    #                               global value of "${quiet}"
394ff340006SMichael Walsh
395ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test
396ff340006SMichael Walsh    ...  \ loc_boot_stack=IPMI MC Reset Warm (run)
397ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
398ff340006SMichael Walsh    Run Key U  ${cmd_buf}
399800b3922SMichael Walsh
400800b3922SMichael Walsh
401800b3922SMichael WalshIPMI MC Reset Warm (off)
402800b3922SMichael Walsh    [Documentation]  Do "IPMI MC Reset Warm (off)" boot test.
403ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
404800b3922SMichael Walsh
405ff340006SMichael Walsh    # Description of argument(s):
406ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
407ff340006SMichael Walsh    #                               specified in the boot_stack is only
408ff340006SMichael Walsh    #                               performed if the machine is not already in
409ff340006SMichael Walsh    #                               the state that would normally result from
410ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
411ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
412ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
413ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
414ff340006SMichael Walsh    #                               you simply want the machine in a desired
415ff340006SMichael Walsh    #                               state.  The default value is the global
416ff340006SMichael Walsh    #                               value of "${stack_mode}"
417ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
418ff340006SMichael Walsh    #                               keyword will print only essential
419ff340006SMichael Walsh    #                               information.  The default value is the
420ff340006SMichael Walsh    #                               global value of "${quiet}"
421ff340006SMichael Walsh
422ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test
423ff340006SMichael Walsh    ...  \ loc_boot_stack=IPMI MC Reset Warm (off)
424ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
425ff340006SMichael Walsh    Run Key U  ${cmd_buf}
426800b3922SMichael Walsh
427800b3922SMichael Walsh
428800b3922SMichael WalshIPMI Power Cycle
429800b3922SMichael Walsh    [Documentation]  Do "IPMI Power Cycle" boot test.
430ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
431800b3922SMichael Walsh
432ff340006SMichael Walsh    # Description of argument(s):
433ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
434ff340006SMichael Walsh    #                               specified in the boot_stack is only
435ff340006SMichael Walsh    #                               performed if the machine is not already in
436ff340006SMichael Walsh    #                               the state that would normally result from
437ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
438ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
439ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
440ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
441ff340006SMichael Walsh    #                               you simply want the machine in a desired
442ff340006SMichael Walsh    #                               state.  The default value is the global
443ff340006SMichael Walsh    #                               value of "${stack_mode}"
444ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
445ff340006SMichael Walsh    #                               keyword will print only essential
446ff340006SMichael Walsh    #                               information.  The default value is the
447ff340006SMichael Walsh    #                               global value of "${quiet}"
448ff340006SMichael Walsh
449ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=IPMI Power Cycle
450ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
451ff340006SMichael Walsh    Run Key U  ${cmd_buf}
452800b3922SMichael Walsh
453800b3922SMichael Walsh
454800b3922SMichael WalshIPMI Power Reset
455800b3922SMichael Walsh    [Documentation]  Do "IPMI Power Reset" boot test.
456ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
457800b3922SMichael Walsh
458ff340006SMichael Walsh    # Description of argument(s):
459ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
460ff340006SMichael Walsh    #                               specified in the boot_stack is only
461ff340006SMichael Walsh    #                               performed if the machine is not already in
462ff340006SMichael Walsh    #                               the state that would normally result from
463ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
464ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
465ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
466ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
467ff340006SMichael Walsh    #                               you simply want the machine in a desired
468ff340006SMichael Walsh    #                               state.  The default value is the global
469ff340006SMichael Walsh    #                               value of "${stack_mode}"
470ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
471ff340006SMichael Walsh    #                               keyword will print only essential
472ff340006SMichael Walsh    #                               information.  The default value is the
473ff340006SMichael Walsh    #                               global value of "${quiet}"
474ff340006SMichael Walsh
475ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=IPMI Power Reset
476ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
477ff340006SMichael Walsh    Run Key U  ${cmd_buf}
478800b3922SMichael Walsh
479800b3922SMichael Walsh
480800b3922SMichael WalshAuto Reboot
481800b3922SMichael Walsh    [Documentation]  Do "Auto Reboot" boot test.
482ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
483800b3922SMichael Walsh
484ff340006SMichael Walsh    # Description of argument(s):
485ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
486ff340006SMichael Walsh    #                               specified in the boot_stack is only
487ff340006SMichael Walsh    #                               performed if the machine is not already in
488ff340006SMichael Walsh    #                               the state that would normally result from
489ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
490ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
491ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
492ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
493ff340006SMichael Walsh    #                               you simply want the machine in a desired
494ff340006SMichael Walsh    #                               state.  The default value is the global
495ff340006SMichael Walsh    #                               value of "${stack_mode}"
496ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
497ff340006SMichael Walsh    #                               keyword will print only essential
498ff340006SMichael Walsh    #                               information.  The default value is the
499ff340006SMichael Walsh    #                               global value of "${quiet}"
500ff340006SMichael Walsh
501ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=Auto Reboot
502ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
503ff340006SMichael Walsh    Run Key U  ${cmd_buf}
504800b3922SMichael Walsh
505800b3922SMichael Walsh
506800b3922SMichael WalshHost Reboot
507800b3922SMichael Walsh    [Documentation]  Do "Host Reboot" boot test.
508ff340006SMichael Walsh    [Arguments]  ${stack_mode}=${stack_mode}  ${quiet}=${quiet}
509800b3922SMichael Walsh
510ff340006SMichael Walsh    # Description of argument(s):
511ff340006SMichael Walsh    # stack_mode                    If stack_mode is set to "skip", each test
512ff340006SMichael Walsh    #                               specified in the boot_stack is only
513ff340006SMichael Walsh    #                               performed if the machine is not already in
514ff340006SMichael Walsh    #                               the state that would normally result from
515ff340006SMichael Walsh    #                               running the given boot test.  Otherwise,
516ff340006SMichael Walsh    #                               the test is skipped.  If stack_mode is set
517ff340006SMichael Walsh    #                               to "normal", all tests from the boot_stack
518ff340006SMichael Walsh    #                               are performed.  "skip" mode is useful when
519ff340006SMichael Walsh    #                               you simply want the machine in a desired
520ff340006SMichael Walsh    #                               state.  The default value is the global
521ff340006SMichael Walsh    #                               value of "${stack_mode}"
522ff340006SMichael Walsh    # quiet                         If this parameter is set to ${1}, this
523ff340006SMichael Walsh    #                               keyword will print only essential
524ff340006SMichael Walsh    #                               information.  The default value is the
525ff340006SMichael Walsh    #                               global value of "${quiet}"
526ff340006SMichael Walsh
527ff340006SMichael Walsh    ${cmd_buf}  Catenate  OBMC Boot Test \ loc_boot_stack=Host Reboot
528ff340006SMichael Walsh    ...  \ loc_stack_mode=${stack_mode} \ loc_quiet=${quiet}
529ff340006SMichael Walsh    Run Key U  ${cmd_buf}
530800b3922SMichael Walsh
531800b3922SMichael Walsh
532c28c239cSMichael WalshSmart Power Off
533c28c239cSMichael Walsh    [Documentation]  Do a smart power off.
534c28c239cSMichael Walsh    [Arguments]  ${quiet}=${QUIET}
535c28c239cSMichael Walsh
536c28c239cSMichael Walsh    # A 'Smart Power Off' consists of a 'REST Power Off' with recovery.
537c28c239cSMichael Walsh    # Namely, if the 'REST Power Off' fails, a 'REST Hard Power Off' will
538c28c239cSMichael Walsh    # be attempted.
539c28c239cSMichael Walsh
540c28c239cSMichael Walsh    # Description of argument(s):
541c28c239cSMichael Walsh    # quiet                         If this parameter is set to ${1}, this
542c28c239cSMichael Walsh    #                               keyword will print only essential
543c28c239cSMichael Walsh    #                               information.  The default value is the
544c28c239cSMichael Walsh    #                               global value of "${quiet}"
545c28c239cSMichael Walsh
546c28c239cSMichael Walsh
547c28c239cSMichael Walsh    # OBMC Boot Test will restore global quiet to initial global value.
548c28c239cSMichael Walsh    # Unfortunately, that restore affects our local quiet so we must
549c28c239cSMichael Walsh    # preserve it.
550c28c239cSMichael Walsh    ${loc_quiet}=  Set Variable  ${quiet}
551c28c239cSMichael Walsh    ${cmd_buf}=  Catenate  REST Power Off \ stack_mode=skip
552c28c239cSMichael Walsh    ...  \ \ quiet=${loc_quiet}
553c28c239cSMichael Walsh    ${status}  ${ret_values}=  Run Key U  ${cmd_buf}  ignore=${1}
554c28c239cSMichael Walsh    ...  quiet=${loc_quiet}
555c28c239cSMichael Walsh
556c28c239cSMichael Walsh    Run Keyword If  '${status}' == 'PASS'  Return From Keyword
557c28c239cSMichael Walsh
558c28c239cSMichael Walsh    ${cmd_buf}=  Catenate  REST Hard Power Off \ stack_mode=skip
559c28c239cSMichael Walsh    ...  \ \ quiet=${loc_quiet}
560c28c239cSMichael Walsh    Run Key U  ${cmd_buf}  quiet=${loc_quiet}
561c28c239cSMichael Walsh
562