def _update_firmware_all(module, kwargs): global __changed__ result = None try: with connection_object(module, kwargs) as con: rep = updatepolicy(con, info="NAMELIST") uuid_list = _valid_compliance_policies(rep['policies']) if len(uuid_list) == 0: module.fail_json(msg="No policy assigned to any device") return result dev_uuid_list = [] if 'uuid_list' in kwargs: dev_uuid_list = kwargs.get('uuid_list') if len(dev_uuid_list) > 0: # getting common uuid of two list uuid_list = list( set(dev_uuid_list).intersection(uuid_list)) rep = updatecomp(con, query='components') ret_dev_list = rep['DeviceList'] mod_dev_list = _transform_devicelist(ret_dev_list, uuid_list) if len(mod_dev_list) == 0: module.fail_json( msg="No updateable component with assigned policy found") return result result = updatecomp(con, mode=kwargs.get('mode'), action=kwargs.get('lxca_action'), dev_list=mod_dev_list) __changed__ = True except Exception as err: module.fail_json(msg="Error updating all device firmware " + str(err)) return result
def _update_firmware_all(module, kwargs): global __changed__ result = None try: with connection_object(module, kwargs) as con: rep = updatepolicy(con, 'query', info="NAMELIST") uuid_list = _valid_compliance_policies(rep['policies']) if len(uuid_list) == 0: module.fail_json(msg="No policy assigned to any device") return result dev_uuid_list = [] if 'uuid_list' in kwargs: dev_uuid_list = kwargs.get('uuid_list') if len(dev_uuid_list) > 0: # getting common uuid of two list uuid_list = list( set(dev_uuid_list).intersection(uuid_list)) rep = updatecomp(con, 'info', query='components') ret_dev_list = rep['DeviceList'] mod_dev_list = _transform_devicelist(ret_dev_list, uuid_list) if len(mod_dev_list) == 0: module.fail_json( msg="No updateable component with assigned policy found") return result # removing component with DoNotUpdate rep = updatepolicy(con, 'query', info="RESULT") skip_components = _get_do_not_update_components( module, rep['policies']) _call_remove_components(skip_components, mod_dev_list) final_dev = {} final_dev['DeviceList'] = mod_dev_list dev_json_str = json.dumps(final_dev) result = updatecomp(con, 'apply', mode=kwargs.get('mode'), action=kwargs.get('lxca_action'), dev_list=dev_json_str) __changed__ = True except Exception as err: module.fail_json(msg="Error updating all device firmware " + str(err)) return result
def _get_updatepolicy(module, kwargs): result = None try: with connection_object(module, kwargs) as con: result = updatepolicy(con, kwargs.get('policy_info'), kwargs.get('jobid'), kwargs.get('uuid'), kwargs.get('policy_name'), kwargs.get('policy_type')) except Exception as err: module.fail_json(msg="Error getting updatepolicy " + str(err)) return result