From 9863459bdabd733e83a42c198051b9adcd0867fb Mon Sep 17 00:00:00 2001 From: Vikrant Balyan Date: Wed, 18 Jan 2017 21:38:43 +0530 Subject: [PATCH] adding api to enable file logging. adding reapply to bios_boot_oder (#91) Signed-off-by: vvb --- imcsdk/__init__.py | 7 +++++++ imcsdk/apis/server/bios.py | 23 ++++++++++++++++------- 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/imcsdk/__init__.py b/imcsdk/__init__.py index 3949995a..e19cd19e 100644 --- a/imcsdk/__init__.py +++ b/imcsdk/__init__.py @@ -13,6 +13,7 @@ import logging +import logging.handlers log = logging.getLogger('imc') console = logging.StreamHandler() @@ -21,6 +22,12 @@ console.setFormatter(formatter) +def enable_file_logging(filename="imcsdk.log"): + file_handler = logging.handlers.RotatingFileHandler( + filename, maxBytes=10*1024*1024, backupCount=5) + log.addHandler(file_handler) + + def set_log_level(level=logging.DEBUG): """ Allows setting log level diff --git a/imcsdk/apis/server/bios.py b/imcsdk/apis/server/bios.py index 7cb6bb8d..44f66b68 100644 --- a/imcsdk/apis/server/bios.py +++ b/imcsdk/apis/server/bios.py @@ -205,8 +205,12 @@ def _add_boot_device(handle, parent_dn, boot_device): def boot_order_precision_set( - handle, reboot_on_update=False, configured_boot_mode="Legacy", - boot_devices=[], server_id=1): + handle, + reboot_on_update=False, + reapply=False, + configured_boot_mode="Legacy", + boot_devices=[], + server_id=1): """ This method will replace the existing boot order precision with the new one and also set the boot mode @@ -215,6 +219,7 @@ def boot_order_precision_set( Args: handle (ImcHandle) reboot_on_update (bool): True, False + reapply(bool): True, False configured_boot_mode(string): "Legacy", "Uefi", "None" boot_devices (list of dict): format [{"order":'1', "device-type":"vmedia", "name":"vmedia"}, @@ -234,10 +239,11 @@ def boot_order_precision_set( Examples: boot_order_precision_set( handle, - reboot_on_update=False, - configured_boot_mode="Uefi", - boot_devices = [{"order":'1', "device-type":"vmedia", "name":"vmedia"}, - {"order":'2', "device-type":"hdd", "name":"hdd"}] + reboot_on_update=False, + reapply=False, + configured_boot_mode="Uefi", + boot_devices = [{"order":'1', "device-type":"vmedia", "name":"vmedia"}, + {"order":'2', "device-type":"hdd", "name":"hdd"}] """ # Insert version check here to gracefully handle older versions of CIMC @@ -247,12 +253,15 @@ def boot_order_precision_set( server_dn = imccoreutils.get_server_dn(handle, server_id) lsbootdevprecision_mo = LsbootDevPrecision(parent_mo_or_dn=server_dn) - # lsbootdevprecision_mo.reboot_on_update = ("no", "yes")[reboot_on_update] lsbootdevprecision_mo.reboot_on_update = "no" if reboot_on_update: lsbootdevprecision_mo.reboot_on_update = "yes" + lsbootdevprecision_mo.reapply = "no" + if reapply: + lsbootdevprecision_mo.reapply = "yes" + lsbootdevprecision_mo.configured_boot_mode = configured_boot_mode handle.set_mo(lsbootdevprecision_mo)