def close_conn(): """ this function close connection to LXCA :param module: :return: None """ disconnect()
def _get_storedcredentials(module, kwargs): result = None try: with connection_object(module, kwargs) as con: result = storedcredentials(con, kwargs.get('storedcredential_id')) except Exception as err: disconnect() module.fail_json(msg="Error getting stored credential " + str(err)) return result
def __exit__(self, type, value, traceback): disconnect()
def main(): """ Main entry point for this module :return: """ module = AnsibleModule( argument_spec=dict( login_user=dict(default=None, required=False), login_password=dict(default=None, required=False, no_log=True), command_options=dict(choices=list(FUNC_DICT)), subcmd=dict(default=None), lxca_action=dict(default=None, choices=[ 'apply', 'power', 'cancelApply', 'read', 'refresh', 'acquire', 'delete', 'unassign', 'import', None ]), auth_url=dict(default=None), uuid=dict(default=None), id=dict(default=None), endpoint_ip=dict(default=None), jobid=dict(default=None), user=dict(default=None, required=False), password=dict(default=None, required=False, no_log=True), force=dict(default=None), description=dict(default=None), recovery_password=dict(default=None, no_log=True), repo_key=dict(default=None, choices=[ None, 'supportedMts', 'size', 'lastRefreshed', 'importDir', 'publicKeys', 'updates', 'updatesByMt', 'updatesByMtByComp' ]), mode=dict(default=None, choices=[None, 'immediate', 'delayed', 'prioritized']), server=dict(default=None), storage=dict(default=None), switch=dict(default=None), cmm=dict(default=None), policy_info=dict(default=None, choices=[ None, 'FIRMWARE', 'RESULTS', 'COMPARE_RESULTS', 'NAMELIST' ]), policy_name=dict(default=None), policy_type=dict(default=None, choices=[ 'CMM', 'IOSwitch', 'RACKSWITCH', 'STORAGE', 'SERVER', None ]), update_list=dict(default=None, type=('list')), machine_type=dict(default=None), fixids=dict(default=None), scope=dict(default=None, choices=['all', 'latest', 'payloads', None]), file_type=dict(default=None, choices=[None, 'all', 'payloads']), endpoint=dict(default=None), restart=dict(default=None, choices=[None, 'defer', 'immediate', 'pending']), type=dict(default=None, choices=[None, 'node', 'rack', 'tower', 'flex']), config_pattern_name=dict(default=None), config_profile_name=dict(default=None), powerdown=dict(default=None), resetimm=dict(default=None), pattern_update_dict=dict(default=None, type=('dict')), includeSettings=dict(default=None), imagetype=dict(default=None, choices=[ "BUNDLE", "BOOT", "DUD", "OS", "OSPROFILE", "SCRIPT", "CUSTOM_CONFIG", "UNATTEND" ]), osimages_dict=dict(default=None, type=('dict')), update_key=dict(default=None, choices=[ 'all', 'currentVersion', 'history', 'importDir', 'size', 'updates', 'updatedDate', None ]), files=dict(default=None), storedcredential_id=dict(default=None), uuid_list=dict(default=None, type=('list')), unittest=dict(default=None), ), supports_check_mode=False, ) if not HAS_PYLXCA: module.fail_json(changed=False, msg="Install pylxca") rslt = None command_options = module.params['command_options'] rslt = FUNC_DICT[command_options](module, module.params) if module.params['unittest']: return rslt if command_options == "connect": if rslt: disconnect() module.exit_json(changed=False, msg="Success %s result" % command_options, result="Connected successfully") if not rslt: module.fail_json(changed=False, msg="Fail to get %s result" % command_options, result=rslt) else: module.exit_json(changed=__changed__, msg="Success %s result" % command_options, result=rslt)