1{
2    # Power on boot types:
3
4    # Initiate a power on using the REST API interface.
5    "REST Power On": {
6        "start": {
7            "rest": "^1$",
8            "chassis": "^Off$",
9            "boot_progress": "^Off|Unspecified$",
10            "operating_system": "^Inactive$",
11            "host": "^Off$"
12        },
13        "end": {
14            "rest": "^1$",
15            "chassis": "^On$",
16            "boot_progress": "^FW Progress, Starting OS|OSStart$",
17            "operating_system": "^BootComplete$",
18            "host": "^Running$",
19            "os_ping": "^1$",
20            "os_login": "^1$",
21            "os_run_cmd": "^1$"
22        },
23        "bmc_reboot": 0,
24        "method_type": "keyword",
25        "method": "Initiate Host Boot  wait=${0}",
26        "lib_file_path": "state_manager.robot"
27    },
28    # Initiate a power on using the IPMI interface.
29    "IPMI Power On": {
30        "start": {
31            "rest": "^1$",
32            "chassis": "^Off$",
33            "boot_progress": "^Off|Unspecified$",
34            "operating_system": "^Inactive$",
35            "host": "^Off$"
36        },
37        "end": {
38            "rest": "^1$",
39            "chassis": "^On$",
40            "boot_progress": "^FW Progress, Starting OS|OSStart$",
41            "operating_system": "^BootComplete$",
42            "host": "^Running$",
43            "os_ping": "^1$",
44            "os_login": "^1$",
45            "os_run_cmd": "^1$"
46        },
47        "bmc_reboot": 0,
48        "method_type": "keyword",
49        "method": "Run External IPMI Standard Command  power on",
50        "lib_file_path": "ipmi_client.robot"
51    },
52
53    # Power off boot types:
54
55    # Initiate a power off using the REST API interface.
56    "REST Power Off": {
57        "start": {
58            "rest": "^1$",
59            "chassis": "^On$"
60        },
61        "end": {
62            "rest": "^1$",
63            "chassis": "^Off$",
64            "boot_progress": "^Off|Unspecified$",
65            "operating_system": "^Inactive$",
66            "host": "^Off$",
67            "os_ping": "^0$",
68            "os_login": "^0$",
69            "os_run_cmd": "^0$"
70        },
71        "bmc_reboot": 0,
72        "method_type": "keyword",
73        "method": "Initiate Host PowerOff  wait=${0}",
74        "lib_file_path": "state_manager.robot"
75    },
76    # Initiate a hard power off using the REST API interface.
77    "REST Hard Power Off": {
78        "start": {
79            "rest": "^1$",
80            "chassis": "^On$"
81        },
82        "end": {
83            "rest": "^1$",
84            "chassis": "^Off$",
85            "boot_progress": "^Off|Unspecified$",
86            "operating_system": "^Inactive$",
87            "host": "^Off$",
88            "os_ping": "^0$",
89            "os_login": "^0$",
90            "os_run_cmd": "^0$"
91        },
92        "bmc_reboot": 0,
93        "method_type": "keyword",
94        "method": "Hard Power Off  wait=${0}",
95        "lib_file_path": "state_manager.robot"
96    },
97    # Initiate a power off using the IPMI interface.
98    "IPMI Power Off": {
99        "start": {
100            "rest": "^1$",
101            "chassis": "^On$"
102        },
103        "end": {
104            "rest": "^1$",
105            "chassis": "^Off$",
106            "boot_progress": "^Off|Unspecified$",
107            "operating_system": "^Inactive$",
108            "host": "^Off$",
109            "os_ping": "^0$",
110            "os_login": "^0$",
111            "os_run_cmd": "^0$"
112        },
113        "bmc_reboot": 0,
114        "method_type": "keyword",
115        "method": "Run External IPMI Standard Command  power off",
116        "lib_file_path": "ipmi_client.robot"
117    },
118    # Initiate a power soft using the IPMI interface.
119    "IPMI Power Soft": {
120        "start": {
121            "rest": "^1$",
122            "chassis": "^On$"
123        },
124        "end": {
125            "rest": "^1$",
126            "chassis": "^Off$",
127            "boot_progress": "^Off|Unspecified$",
128            "operating_system": "^Inactive$",
129            "host": "^Off$",
130            "os_ping": "^0$",
131            "os_login": "^0$",
132            "os_run_cmd": "^0$"
133        },
134        "bmc_reboot": 0,
135        "method_type": "keyword",
136        "method": "Run External IPMI Standard Command  power soft",
137        "lib_file_path": "ipmi_client.robot"
138    },
139    # Run a "shutdown" command on the OS_HOST.
140    "Host Power Off": {
141        "start": {
142            "rest": "^1$",
143            "chassis": "^On$",
144            "boot_progress": "^FW Progress, Starting OS|OSStart$",
145            "operating_system": "^BootComplete$",
146            "host": "^Running$",
147            "os_ping": "^1$",
148            "os_login": "^1$",
149            "os_run_cmd": "^1$"
150        },
151        "end": {
152            "rest": "^1$",
153            "chassis": "^Off$",
154            "boot_progress": "^Off|Unspecified$",
155            "operating_system": "^Inactive$",
156            "host": "^Off$",
157            "os_ping": "^0$",
158            "os_login": "^0$",
159            "os_run_cmd": "^0$"
160        },
161        "bmc_reboot": 0,
162        "method_type": "keyword",
163        "method": "utils.Initiate OS Host Power Off",
164        "lib_file_path": "utils.robot"
165    },
166
167    # OBMC re-boot boot types:
168
169    # APOR - Auto Power On Restart - Note that this is functionally equivalent
170    # to 'PDU AC Cycle (run)'.
171    "APOR": {
172        "start": {
173            "rest": "^1$",
174            "chassis": "^On$",
175            "boot_progress": "^FW Progress, Starting OS|OSStart$",
176            "operating_system": "^BootComplete$",
177            "host": "^Running$",
178            "os_ping": "^1$",
179            "os_login": "^1$",
180            "os_run_cmd": "^1$"
181        },
182        "end": {
183            "rest": "^1$",
184            "chassis": "^On$",
185            "boot_progress": "^FW Progress, Starting OS|OSStart$",
186            "operating_system": "^BootComplete$",
187            "host": "^Running$",
188            "os_ping": "^1$",
189            "os_login": "^1$",
190            "os_run_cmd": "^1$"
191        },
192        "bmc_reboot": 1,
193        "method_type": "keyword",
194        "method": "Set Global Variable  ${PDU_TYPE}  pdu ; Set Global Variable  ${PDU_IP}  ${PDU_HOST} ; PDU Power Cycle",
195        "lib_file_path": "pdu/pdu.robot:pdu/synaccess.robot"
196    },
197    # Run a "reboot" on the OBMC while host is running.
198    "OBMC Reboot (run)": {
199        "start": {
200            "rest": "^1$",
201            "chassis": "^On$",
202            "boot_progress": "^FW Progress, Starting OS|OSStart$",
203            "operating_system": "^BootComplete$",
204            "host": "^Running$",
205            "os_ping": "^1$",
206            "os_login": "^1$",
207            "os_run_cmd": "^1$"
208        },
209        "end": {
210            "rest": "^1$",
211            "chassis": "^On$",
212            "boot_progress": "^FW Progress, Starting OS|OSStart$",
213            "operating_system": "^BootComplete$",
214            "host": "^Running$",
215            "os_ping": "^1$",
216            "os_login": "^1$",
217            "os_run_cmd": "^1$"
218        },
219        "bmc_reboot": 1,
220        "method_type": "keyword",
221        "method": "BMC Execute Command  /sbin/reboot  fork=${1}"
222    },
223    # Run a REST "reboot" on the OBMC while host is running.
224    "REST OBMC Reboot (run)": {
225        "start": {
226            "rest": "^1$",
227            "chassis": "^On$",
228            "boot_progress": "^FW Progress, Starting OS|OSStart$",
229            "operating_system": "^BootComplete$",
230            "host": "^Running$",
231            "os_ping": "^1$",
232            "os_login": "^1$",
233            "os_run_cmd": "^1$"
234        },
235        "end": {
236            "rest": "^1$",
237            "chassis": "^On$",
238            "boot_progress": "^FW Progress, Starting OS|OSStart$",
239            "operating_system": "^BootComplete$",
240            "host": "^Running$",
241            "os_ping": "^1$",
242            "os_login": "^1$",
243            "os_run_cmd": "^1$"
244        },
245        "bmc_reboot": 1,
246        "method_type": "keyword",
247        "method": "Initiate BMC Reboot  wait=${0}",
248        "lib_file_path": "state_manager.robot"
249    },
250    # Run a "reboot" on the OBMC while host is off.
251    "OBMC Reboot (off)": {
252        "start": {
253            "rest": "^1$",
254            "chassis": "^Off$"
255        },
256        "end": {
257            "rest": "^1$",
258            "chassis": "^Off$",
259            "boot_progress": "^Off|Unspecified$",
260            "operating_system": "^Inactive$",
261            "host": "^Off$"
262        },
263        "bmc_reboot": 1,
264        "method_type": "keyword",
265        "method": "BMC Execute Command  /sbin/reboot  fork=${1}"
266    },
267    # Run a "reboot" on the OBMC while host is off.
268    "REST OBMC Reboot (off)": {
269        "start": {
270            "rest": "^1$",
271            "chassis": "^Off$"
272        },
273        "end": {
274            "rest": "^1$",
275            "chassis": "^Off$",
276            "boot_progress": "^Off|Unspecified$",
277            "operating_system": "^Inactive$",
278            "host": "^Off$"
279        },
280        "bmc_reboot": 1,
281        "method_type": "keyword",
282        "method": "Initiate BMC Reboot  wait=${0}",
283        "lib_file_path": "state_manager.robot"
284    },
285    # Cycle AC via the PDU while host is off.
286    "PDU AC Cycle (run)": {
287        "start": {
288            "rest": "^1$",
289            "chassis": "^On$",
290            "boot_progress": "^FW Progress, Starting OS|OSStart$",
291            "operating_system": "^BootComplete$",
292            "host": "^Running$",
293            "os_ping": "^1$",
294            "os_login": "^1$",
295            "os_run_cmd": "^1$"
296        },
297        "end": {
298            "rest": "^1$",
299            "chassis": "^On$",
300            "boot_progress": "^FW Progress, Starting OS|OSStart$",
301            "operating_system": "^BootComplete$",
302            "host": "^Running$",
303            "os_ping": "^1$",
304            "os_login": "^1$",
305            "os_run_cmd": "^1$"
306        },
307        "bmc_reboot": 1,
308        "method_type": "keyword",
309        "method": "Set Global Variable  ${PDU_TYPE}  pdu ; Set Global Variable  ${PDU_IP}  ${PDU_HOST} ; PDU Power Cycle",
310        "lib_file_path": "pdu/pdu.robot:pdu/synaccess.robot"
311    },
312    # Cycle AC via the PDU while host is off.
313    "PDU AC Cycle (off)": {
314        "start": {
315            "rest": "^1$",
316            "chassis": "^Off$"
317        },
318        "end": {
319            "rest": "^1$",
320            "chassis": "^Off$",
321            "boot_progress": "^Off|Unspecified$",
322            "operating_system": "^Inactive$",
323            "host": "^Off$"
324        },
325        "bmc_reboot": 1,
326        "method_type": "keyword",
327        "method": "Set Global Variable  ${PDU_TYPE}  pdu ; Set Global Variable  ${PDU_IP}  ${PDU_HOST} ; PDU Power Cycle",
328        "lib_file_path": "pdu/pdu.robot:pdu/synaccess.robot"
329    },
330    # Initiate an mc reset warm using the IPMI interface while chassis is
331    # powered on.
332    "IPMI MC Reset Warm (run)": {
333        "start": {
334            "rest": "^1$",
335            "chassis": "^On$",
336            "boot_progress": "^FW Progress, Starting OS|OSStart$",
337            "operating_system": "^BootComplete$",
338            "host": "^Running$",
339            "os_ping": "^1$",
340            "os_login": "^1$",
341            "os_run_cmd": "^1$"
342        },
343        "end": {
344            "rest": "^1$",
345            "chassis": "^On$",
346            "boot_progress": "^FW Progress, Starting OS|OSStart$",
347            "operating_system": "^BootComplete$",
348            "host": "^Running$",
349            "os_ping": "^1$",
350            "os_login": "^1$",
351            "os_run_cmd": "^1$"
352        },
353        "bmc_reboot": 1,
354        "method_type": "keyword",
355        "method": "Run External IPMI Standard Command  mc reset warm ; Printn",
356        "lib_file_path": "ipmi_client.robot:gen_print.py"
357    },
358    # Initiate an mc reset warm using the IPMI interface while chassis is
359    # powered off.
360    "IPMI MC Reset Warm (off)": {
361        "start": {
362            "rest": "^1$",
363            "chassis": "^Off$"
364        },
365        "end": {
366            "rest": "^1$",
367            "chassis": "^Off$",
368            "boot_progress": "^Off|Unspecified$",
369            "operating_system": "^Inactive$",
370            "host": "^Off$"
371        },
372        "bmc_reboot": 1,
373        "method_type": "keyword",
374        "method": "Run External IPMI Standard Command  mc reset warm ; Printn",
375        "lib_file_path": "ipmi_client.robot:gen_print.py"
376    },
377
378    # Host OS re-boot boot types:
379
380    # Initiate a power cycle using the IPMI interface (equivalent to off/on).
381    "IPMI Power Cycle": {
382        "start": {
383            "rest": "^1$",
384            "chassis": "^On$",
385            "boot_progress": "^FW Progress, Starting OS|OSStart$",
386            "operating_system": "^BootComplete$",
387            "host": "^Running$",
388            "os_ping": "^1$",
389            "os_login": "^1$",
390            "os_run_cmd": "^1$"
391        },
392        "end": {
393            "rest": "^1$",
394            "chassis": "^On$",
395            "boot_progress": "^FW Progress, Starting OS|OSStart$",
396            "operating_system": "^BootComplete$",
397            "host": "^Running$",
398            "os_ping": "^1$",
399            "os_login": "^1$",
400            "os_run_cmd": "^1$"
401        },
402        "bmc_reboot": 0,
403        "method_type": "keyword",
404        "method": "Run External IPMI Standard Command  power cycle",
405        "lib_file_path": "ipmi_client.robot"
406    },
407    # Initiate a power reset using the IPMI interface (equivalent to off/on).
408    # Functionally equivalent to "IPMI Power Cycle".
409    "IPMI Power Reset": {
410        "start": {
411            "rest": "^1$",
412            "chassis": "^On$",
413            "boot_progress": "^FW Progress, Starting OS|OSStart$",
414            "operating_system": "^BootComplete$",
415            "host": "^Running$",
416            "os_ping": "^1$",
417            "os_login": "^1$",
418            "os_run_cmd": "^1$"
419        },
420        "end": {
421            "rest": "^1$",
422            "chassis": "^On$",
423            "boot_progress": "^FW Progress, Starting OS|OSStart$",
424            "operating_system": "^BootComplete$",
425            "host": "^Running$",
426            "os_ping": "^1$",
427            "os_login": "^1$",
428            "os_run_cmd": "^1$"
429        },
430        "bmc_reboot": 0,
431        "method_type": "keyword",
432        "method": "Run External IPMI Standard Command  power reset",
433        "lib_file_path": "ipmi_client.robot"
434    },
435    # Do an auto reboot by setting auto reboot to "yes" and going to quiesce state.
436    "Auto Reboot": {
437        "start": {
438            "rest": "^1$",
439            "chassis": "^On$",
440            "boot_progress": "^FW Progress, Starting OS|OSStart$",
441            "operating_system": "^BootComplete$",
442            "host": "^Running$",
443            "os_ping": "^1$",
444            "os_login": "^1$",
445            "os_run_cmd": "^1$"
446        },
447        "end": {
448            "rest": "^1$",
449            "chassis": "^On$",
450            "boot_progress": "^FW Progress, Starting OS|OSStart$",
451            "operating_system": "^BootComplete$",
452            "host": "^Running$",
453            "os_ping": "^1$",
454            "os_login": "^1$",
455            "os_run_cmd": "^1$"
456        },
457        "bmc_reboot": 0,
458        "method_type": "keyword",
459        "method": "utils.Initiate Auto Reboot",
460        "lib_file_path": "utils.robot"
461    },
462    # Run a "reboot" command on the OS_HOST.
463    "Host Reboot": {
464        "start": {
465            "rest": "^1$",
466            "chassis": "^On$",
467            "boot_progress": "^FW Progress, Starting OS|OSStart$",
468            "operating_system": "^BootComplete$",
469            "host": "^Running$",
470            "os_ping": "^1$",
471            "os_login": "^1$",
472            "os_run_cmd": "^1$"
473        },
474        "end": {
475            "rest": "^1$",
476            "chassis": "^On$",
477            "boot_progress": "^FW Progress, Starting OS|OSStart$",
478            "operating_system": "^BootComplete$",
479            "host": "^Running$",
480            "os_ping": "^1$",
481            "os_login": "^1$",
482            "os_run_cmd": "^1$"
483        },
484        "bmc_reboot": 0,
485        "method_type": "keyword",
486        "method": "utils.Initiate OS Host Reboot",
487        "lib_file_path": "utils.robot"
488    }
489}
490