cisco.dnac.lan_automation_v2 module -- Resource module for Lan Automation V2

Note

This module is part of the cisco.dnac collection (version 6.24.0).

To install it, use: ansible-galaxy collection install cisco.dnac. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: cisco.dnac.lan_automation_v2.

New in cisco.dnac 6.14.0

Synopsis

  • Manage operation create of the resource Lan Automation V2.

  • Invoke V2 LAN Automation Start API, which supports optional auto-stop processing feature based on the provided timeout or a specific device list, or both. The stop processing will be executed automatically when either of the cases is satisfied, without specifically calling the stop API. The V2 API behaves similarly to V1 if no timeout or device list is provided, and the user needs to call the stop API for LAN Automation stop processing. With the V2 API, the user can also specify the level up to which the devices can be LAN automated.

Note

This module has a corresponding action plugin.

Requirements

The below requirements are needed on the host that executes this module.

  • dnacentersdk >= 2.7.2

  • python >= 3.5

Parameters

Parameter

Comments

dnac_debug

boolean

Flag for Cisco DNA Center SDK to enable debugging.

Choices:

dnac_host

string / required

The Cisco DNA Center hostname.

dnac_password

string

The Cisco DNA Center password to authenticate.

dnac_port

integer

The Cisco DNA Center port.

Default: :ansible-option-default:`443`

dnac_username

aliases: user

string

The Cisco DNA Center username to authenticate.

Default: :ansible-option-default:`"admin"`

dnac_verify

boolean

Flag to enable or disable SSL certificate verification.

Choices:

dnac_version

string

Informs the SDK which version of Cisco DNA Center to use.

Default: :ansible-option-default:`"2.3.7.6"`

payload

list / elements=dictionary

Lan Automation V2's payload.

discoveredDeviceSiteNameHierarchy

string

Discovered device site name.

discoveryDevices

list / elements=dictionary

Lan Automation V2's discoveryDevices.

deviceHostName

string

Hostname of the device.

deviceManagementIPAddress

string

Management IP Address of the device.

deviceSerialNumber

string

Serial number of the device.

deviceSiteNameHierarchy

string

Site name hierarchy for the device, must be a child site of the discoveredDeviceSiteNameHierarchy or same if it’s not area type.

discoveryLevel

integer

Level below primary seed device upto which the new devices will be LAN Automated by this session, level + seed = tier. Supported range for level is 1-5, default level is 2.

discoveryTimeout

integer

Discovery timeout in minutes. Until this time, the stop processing will not be triggered. Any device contacting after the provided discovery timeout will not be processed, and a device reset and reload will be attempted to bring it back to the PnP agent state before process completion. The supported timeout range is in minutes 20-10080. If both timeout and discovery devices list are provided, the stop processing will be attempted whichever happens earlier. Users can always use the LAN Automation delete API to force stop processing.

hostNameFileId

string

Use /dna/intent/api/v1/file/namespace/nw_orch API to get the file ID for the already uploaded file in the nw_orch namespace.

hostNamePrefix

string

Host name prefix assigned to the discovered device.

ipPools

list / elements=dictionary

Lan Automation V2's ipPools.

ipPoolName

string

Name of the IP pool.

ipPoolRole

string

Role of the IP pool. Supported roles are MAIN_POOL and PHYSICAL_LINK_POOL.

isisDomainPwd

string

IS-IS domain password in plain text.

multicastEnabled

boolean

peerDeviceManagmentIPAddress

string

Peer seed management IP address.

primaryDeviceInterfaceNames

list / elements=string

The list of interfaces on primary seed via which the discovered devices are connected.

primaryDeviceManagmentIPAddress

string

Primary seed management IP address.

redistributeIsisToBgp

boolean

Advertise LAN Automation summary route into BGP.

Choices:

validate_response_schema

boolean

Flag for Cisco DNA Center SDK to enable the validation of request bodies against a JSON schema.

Choices:

Notes

Note

  • SDK Method used are lan_automation.LanAutomation.lan_automation_start_v2,

  • Paths used are post /dna/intent/api/v2/lan-automation,

  • Does not support check_mode

  • The plugin runs on the control node and does not use any ansible connection plugins, but instead the embedded connection manager from Cisco DNAC SDK

  • The parameters starting with dnac_ are used by the Cisco DNAC Python SDK to establish the connection

See Also

See also

Cisco DNA Center documentation for LAN Automation LANAutomationStartV2

Complete reference of the LANAutomationStartV2 API.

Examples

- name: Create
  cisco.dnac.lan_automation_v2:
    dnac_host: "{{dnac_host}}"
    dnac_username: "{{dnac_username}}"
    dnac_password: "{{dnac_password}}"
    dnac_verify: "{{dnac_verify}}"
    dnac_port: "{{dnac_port}}"
    dnac_version: "{{dnac_version}}"
    dnac_debug: "{{dnac_debug}}"
    payload:
    - discoveredDeviceSiteNameHierarchy: string
      discoveryDevices:
      - deviceHostName: string
        deviceManagementIPAddress: string
        deviceSerialNumber: string
        deviceSiteNameHierarchy: string
      discoveryLevel: 0
      discoveryTimeout: 0
      hostNameFileId: string
      hostNamePrefix: string
      ipPools:
      - ipPoolName: string
        ipPoolRole: string
      isisDomainPwd: string
      multicastEnabled: true
      peerDeviceManagmentIPAddress: string
      primaryDeviceInterfaceNames:
      - string
      primaryDeviceManagmentIPAddress: string
      redistributeIsisToBgp: true

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

dnac_response

dictionary

A dictionary or list with the response returned by the Cisco DNAC Python SDK

Returned: always

Sample: :ansible-rv-sample-value:`{"response": {"taskId": "string", "url": "string"}, "version": "string"}`

Authors

  • Rafael Campos (@racampos)