def run(self, tmp=None, task_vars=None): self._task.diff = False self._result = super(ActionModule, self).run(tmp, task_vars) self._result["changed"] = False self._check_argspec() # Retrieves the parameters required by DNA Center # that were supplied by the user in the inventory file dnac_params = { k: task_vars[k] for k in dnac_argument_spec().keys() if not task_vars.get(k) is None } # Updates the module parameters dictionary with the dnac parameters self._task.args.update(dnac_params) dnac = DNACModule( moddef=moddef, params=self._task.args, verbosity=self._play_context.verbosity, ) state = self._task.args.get("state") if state == "create": dnac.disable_validation() dnac.exec("post") self._result.update(dnac.exit_json()) return self._result
def run(self, tmp=None, task_vars=None): self._task.diff = False self._result = super(ActionModule, self).run(tmp, task_vars) self._result["changed"] = False self._check_argspec() # Retrieves the parameters required by DNA Center # that were supplied by the user in the inventory file dnac_params = { k: task_vars[k] for k in dnac_argument_spec().keys() if not task_vars.get(k) is None } # Updates the module parameters dictionary with the dnac parameters self._task.args.update(dnac_params) dnac = DNACModule( moddef=moddef, params=self._task.args, verbosity=self._play_context.verbosity, ) state = self._task.args.get("state") if state == "query": dnac.exec("get") elif state == "absent": dnac.exec("delete") elif state == "present": ec = SiteExistenceCriteria(dnac) if ec.object_exists(): dnac.disable_validation() dnac.exec("put") dnac.result.update({"warning": ec.WARN_OBJECT_EXISTS}) else: dnac.disable_validation() dnac.exec("post") self._result.update(dnac.exit_json()) return self._result
AnsibleArgSpecValidator, ) from ansible.errors import AnsibleActionFail from ansible_collections.cisco.dnac.plugins.module_utils.dnac import ( ModuleDefinition, DNACModule, dnac_argument_spec, ) from ansible_collections.cisco.dnac.plugins.module_utils.definitions.sda_auth_profile import ( module_definition, ) # Instantiate the module definition for this module moddef = ModuleDefinition(module_definition) # Get the argument spec for this module and add the 'state' param, # which is common to all modules argument_spec = moddef.get_argument_spec_dict() argument_spec.update(dict(state=dnac_argument_spec().get("state"))) # Get the schema conditionals, if applicable required_if = moddef.get_required_if_list() class ActionModule(ActionBase): def __init__(self, *args, **kwargs): super(ActionModule, self).__init__(*args, **kwargs) self._supports_async = False self._result = None # Checks the supplied parameters against the argument spec for this module def _check_argspec(self): aav = AnsibleArgSpecValidator( data=self._task.args, schema=dict(argument_spec=argument_spec),