1#!/usr/bin/env python 2 3r""" 4PEL functions. 5""" 6 7import func_args as fa 8import bmc_ssh_utils as bsu 9import json 10 11 12def peltool(option_string, **bsu_options): 13 r""" 14 Run peltool on the BMC with the caller's option string and return the result. 15 16 Example: 17 18 ${pel_results}= Peltool -l 19 Rprint Vars pel_results 20 21 pel_results: 22 [0x50000031]: 23 [CompID]: 0x1000 24 [PLID]: 0x50000031 25 [Subsystem]: BMC Firmware 26 [Message]: An application had an internal failure 27 [SRC]: BD8D1002 28 [Commit Time]: 02/25/2020 04:51:31 29 [Sev]: Unrecoverable Error 30 [CreatorID]: BMC 31 32 Description of argument(s): 33 option_string A string of options which are to be processed by the peltool command. 34 bsu_options Options to be passed directly to bmc_execute_command. See its prolog for 35 details. 36 """ 37 38 bsu_options = fa.args_to_objects(bsu_options) 39 out_buf, stderr, rc = bsu.bmc_execute_command('peltool ' + option_string, **bsu_options) 40 out_buf = json.loads(out_buf) 41 return out_buf 42