Skip to content

Commit

Permalink
Merge pull request #96 from cisco-en-programmability/develop_2.3.5.3
Browse files Browse the repository at this point in the history
new dnac version 2.3.5.3
  • Loading branch information
fmunozmiranda authored Mar 31, 2023
2 parents 95957b4 + 99298f9 commit f47bea0
Show file tree
Hide file tree
Showing 213 changed files with 8,739 additions and 919 deletions.
49 changes: 48 additions & 1 deletion changelogs/changelog.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -630,4 +630,51 @@ releases:
release_summary: New method to compare changes
bugfixes:
- A new method to compare changes for specific cases has been added.
- network_device - Used a new method to compare changes.
- network_device - Used a new method to compare changes.
6.7.0:
release_date: "xxxx-xx-xx"
changes:
release_summary: New method to compare changes
minor_changes:
- accesspoint_configuration_details_by_task_id_info - new module
- authentication_policy_servers_info - new module
- credential_to_site_by_siteid_create_v2 - new module
- device_reboot_apreboot_info - new module
- dnac_packages_info - new module
- eox_status_device_info - new module
- eox_status_summary_info - new module
- event_email_config - new module
- event_email_config_info - new module
- event_snmp_config_info - new module
- event_syslog_config - new module
- event_syslog_config_info - new module
- execute_suggested_actions_commands - new module
- global_credential_v2 - new module
- global_credential_v2_info - new module
- integration_settings_instances_itsm - new module
- integration_settings_instances_itsm_info - new module
- lan_automation_log_by_serial_number_info - new module
- network_device_user_defined_field - new module
- network_device_user_defined_field_info - new module
- network_v2 - new module
- network_v2_info - new module
- role_permissions_info - new module
- roles_info - new module
- service_provider_v2 - new module
- service_provider_v2_info - new module
- sp_profile_delete_v2 - new module
- user - new module
- user_info - new module
- users_external_servers_info - new module
- wireless_accespoint_configuration - new module
- wireless_accesspoint_configuration_summary_info - new module
- device_interface_info - attributes `lastInputTime` and `lastOutputTime` were added.
- pnp_device_claim_to_site - attributes `removeInactive` and `hostname` were removed.
- sda_fabric_border_device - attributes `routeDistributionProtocol` and `borderPriority` were added.
- sda_fabric_control_plane_device attribute `routeDistributionProtocol` was added.
- sda_fabric_edge_device - attribute `siteNameHierarchy` was added.
- sda_fabric_site - attribute `fabricType` was added.
- sda_port_assignment_for_user_device - attribute `interfaceNames` was added.
- sda_virtual_network - attribute `vManageVpnId` was added.
- sda_virtual_network_ip_pool - attribute `isBridgeModeVm` was added.
- sda_virtual_network_v2 - attribute `isBridgeModeVm` was added.
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Copyright (c) 2021, Cisco Systems
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)

from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
from ansible.plugins.action import ActionBase
try:
from ansible_collections.ansible.utils.plugins.module_utils.common.argspec_validate import (
AnsibleArgSpecValidator,
)
except ImportError:
ANSIBLE_UTILS_IS_INSTALLED = False
else:
ANSIBLE_UTILS_IS_INSTALLED = True
from ansible.errors import AnsibleActionFail
from ansible_collections.cisco.dnac.plugins.plugin_utils.dnac import (
DNACSDK,
dnac_argument_spec,
)

# Get common arguments specification
argument_spec = dnac_argument_spec()
# Add arguments specific for this module
argument_spec.update(dict(
task_id=dict(type="str"),
headers=dict(type="dict"),
))

required_if = []
required_one_of = []
mutually_exclusive = []
required_together = []


class ActionModule(ActionBase):
def __init__(self, *args, **kwargs):
if not ANSIBLE_UTILS_IS_INSTALLED:
raise AnsibleActionFail("ansible.utils is not installed. Execute 'ansible-galaxy collection install ansible.utils'")
super(ActionModule, self).__init__(*args, **kwargs)
self._supports_async = False
self._supports_check_mode = True
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),
schema_format="argspec",
schema_conditionals=dict(
required_if=required_if,
required_one_of=required_one_of,
mutually_exclusive=mutually_exclusive,
required_together=required_together,
),
name=self._task.action,
)
valid, errors, self._task.args = aav.validate()
if not valid:
raise AnsibleActionFail(errors)

def get_object(self, params):
new_object = dict(
task_id=params.get("task_id"),
headers=params.get("headers"),
)
return new_object

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()

self._result.update(dict(dnac_response={}))

dnac = DNACSDK(params=self._task.args)

id = self._task.args.get("task_id")
if id:
response = dnac.exec(
family="wireless",
function='get_access_point_configuration_task_result',
params=self.get_object(self._task.args),
)
self._result.update(dict(dnac_response=response))
self._result.update(dnac.exit_json())
return self._result
if not id:
# NOTE: Does not have a get all method or it is in another action
response = None
dnac.object_modify_result(changed=False, result="Module does not have get all, check arguments of module")
self._result.update(dict(dnac_response=response))
self._result.update(dnac.exit_json())
return self._result
93 changes: 93 additions & 0 deletions plugins/action/authentication_policy_servers_info.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
#!/usr/bin/env python
# -*- coding: utf-8 -*-

# Copyright (c) 2021, Cisco Systems
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)

from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
from ansible.plugins.action import ActionBase
try:
from ansible_collections.ansible.utils.plugins.module_utils.common.argspec_validate import (
AnsibleArgSpecValidator,
)
except ImportError:
ANSIBLE_UTILS_IS_INSTALLED = False
else:
ANSIBLE_UTILS_IS_INSTALLED = True
from ansible.errors import AnsibleActionFail
from ansible_collections.cisco.dnac.plugins.plugin_utils.dnac import (
DNACSDK,
dnac_argument_spec,
)

# Get common arguments specification
argument_spec = dnac_argument_spec()
# Add arguments specific for this module
argument_spec.update(dict(
isIseEnabled=dict(type="bool"),
state_=dict(type="str"),
role=dict(type="str"),
headers=dict(type="dict"),
))

required_if = []
required_one_of = []
mutually_exclusive = []
required_together = []


class ActionModule(ActionBase):
def __init__(self, *args, **kwargs):
if not ANSIBLE_UTILS_IS_INSTALLED:
raise AnsibleActionFail("ansible.utils is not installed. Execute 'ansible-galaxy collection install ansible.utils'")
super(ActionModule, self).__init__(*args, **kwargs)
self._supports_async = False
self._supports_check_mode = True
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),
schema_format="argspec",
schema_conditionals=dict(
required_if=required_if,
required_one_of=required_one_of,
mutually_exclusive=mutually_exclusive,
required_together=required_together,
),
name=self._task.action,
)
valid, errors, self._task.args = aav.validate()
if not valid:
raise AnsibleActionFail(errors)

def get_object(self, params):
new_object = dict(
is_ise_enabled=params.get("isIseEnabled"),
state=params.get("state_"),
role=params.get("role"),
headers=params.get("headers"),
)
return new_object

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()

self._result.update(dict(dnac_response={}))

dnac = DNACSDK(params=self._task.args)

response = dnac.exec(
family="system_settings",
function='get_authentication_and_policy_servers',
params=self.get_object(self._task.args),
)
self._result.update(dict(dnac_response=response))
self._result.update(dnac.exit_json())
return self._result
4 changes: 3 additions & 1 deletion plugins/action/business_sda_hostonboarding_ssid_ippool.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@
scalableGroupName=dict(type="str"),
ssidNames=dict(type="list"),
siteNameHierarchy=dict(type="str"),
headers=dict(type="dict"),
))

required_if = [
Expand All @@ -54,6 +55,7 @@ def __init__(self, params, dnac):
scalableGroupName=params.get("scalableGroupName"),
ssidNames=params.get("ssidNames"),
siteNameHierarchy=params.get("siteNameHierarchy"),
headers=params.get("headers"),
)

def get_all_params(self, name=None, id=None):
Expand Down Expand Up @@ -138,7 +140,7 @@ def update(self):
result = None
result = self.dnac.exec(
family="fabric_wireless",
function="update_ssid_to_ip_pool_mapping2",
function="update_ssid_to_ip_pool_mapping",
params=self.update_all_params(),
op_modifies=True,
)
Expand Down
4 changes: 2 additions & 2 deletions plugins/action/compliance_device_details_info.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@
complianceType=dict(type="str"),
complianceStatus=dict(type="str"),
deviceUuid=dict(type="str"),
offset=dict(type="str"),
limit=dict(type="str"),
offset=dict(type="int"),
limit=dict(type="int"),
headers=dict(type="dict"),
))

Expand Down
2 changes: 1 addition & 1 deletion plugins/action/configuration_template_deploy.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
forcePushTemplate=dict(type="bool"),
isComposite=dict(type="bool"),
mainTemplateId=dict(type="str"),
memberTemplateDeploymentInfo=dict(type="list"),
memberTemplateDeploymentInfo=dict(type="str"),
targetInfo=dict(type="list"),
templateId=dict(type="str"),
))
Expand Down
2 changes: 1 addition & 1 deletion plugins/action/configuration_template_deploy_v2.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
forcePushTemplate=dict(type="bool"),
isComposite=dict(type="bool"),
mainTemplateId=dict(type="str"),
memberTemplateDeploymentInfo=dict(type="list"),
memberTemplateDeploymentInfo=dict(type="str"),
targetInfo=dict(type="list"),
templateId=dict(type="str"),
))
Expand Down
2 changes: 1 addition & 1 deletion plugins/action/configuration_template_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
id=dict(type="str"),
lastUpdateTime=dict(type="int"),
name=dict(type="str"),
templates=dict(type="list"),
templates=dict(type="dict"),
projectId=dict(type="str"),
))

Expand Down
Loading

0 comments on commit f47bea0

Please sign in to comment.