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