cisco.nxos.nxos_bfd_interfaces – BFD interfaces resource module

Note

This plugin is part of the cisco.nxos collection.

To install it use: ansible-galaxy collection install cisco.nxos.

To use it in a playbook, specify: cisco.nxos.nxos_bfd_interfaces.

New in version 1.0.0: of cisco.nxos

Synopsis

  • Manages attributes of Bidirectional Forwarding Detection (BFD) on the interface.

Parameters

Parameter Choices/Defaults Comments
config
list / elements=dictionary
The provided configuration
bfd
string
    Choices:
  • enable
  • disable
Enable/Disable Bidirectional Forwarding Detection (BFD) on the interface.
echo
string
    Choices:
  • enable
  • disable
Enable/Disable BFD Echo functionality on the interface.
name
string
The name of the interface.
running_config
string
This option is used only with state parsed.
The value of this option should be the output received from the NX-OS device by executing the command show running-config | section '^interface|^feature bfd'.
The state parsed reads the configuration from running_config option and transforms it into Ansible structured data as per the resource module's argspec and the value is then returned in the parsed key within the result.
state
string
    Choices:
  • merged ←
  • replaced
  • overridden
  • deleted
  • gathered
  • rendered
  • parsed
The state of the configuration after module completion

Notes

Note

  • Tested against NX-OS 7.0(3)I5(1).

  • Feature bfd should be enabled for this module.

Examples

# Using deleted

- name: Configure interfaces
  cisco.nxos.nxos_bfd_interfaces:
    state: deleted


# Using merged

- name: Configure interfaces
  cisco.nxos.nxos_bfd_interfaces:
    config:
    - name: Ethernet1/1
      bfd: enable
      echo: enable
    - name: Ethernet1/2
      bfd: disable
      echo: disable
    state: merged


# Using overridden

- name: Configure interfaces
  cisco.nxos.nxos_bfd_interfaces:
    config:
    - name: Ethernet1/1
      bfd: enable
      echo: enable
    - name: Ethernet1/2
      bfd: disable
      echo: disable
    state: overridden


# Using replaced

- name: Configure interfaces
  cisco.nxos.nxos_bfd_interfaces:
    config:
    - name: Ethernet1/1
      bfd: enable
      echo: enable
    - name: Ethernet1/2
      bfd: disable
      echo: disable
    state: replaced

# Using rendered

- name: Use rendered state to convert task input to device specific commands
  cisco.nxos.nxos_bfd_interfaces:
    config:
    - name: Ethernet1/800
      bfd: enable
      echo: enable
    - name: Ethernet1/801
      bfd: disable
      echo: disable
    state: rendered

# Task Output (redacted)
# -----------------------

# rendered:
#   - "interface Ethernet1/800"
#   - "bfd"
#   - "bfd echo"
#   - "interface Ethernet1/801"
#   - "no bfd"
#   - "no bfd echo"

# Using parsed

# parsed.cfg
# ------------

# feature bfd
# interface Ethernet1/800
#   no switchport
#   no bfd
#   no bfd echo
# interface Ethernet1/801
#   no switchport
#   no bfd
# interface Ethernet1/802
#   no switchport
#   no bfd echo
# interface mgmt0
#   ip address dhcp
#   vrf member management

- name: Use parsed state to convert externally supplied config to structured format
  cisco.nxos.nxos_bfd_interfaces:
    running_config: "{{ lookup('file', 'parsed.cfg') }}"
    state: parsed

# Task output (redacted)
# -----------------------

# parsed:
#   - bfd: disable
#     echo: disable
#     name: Ethernet1/800
#   - bfd: disable
#     echo: enable
#     name: Ethernet1/801
#   - bfd: enable
#     echo: disable
#     name: Ethernet1/802
#   - bfd: enable
#     echo: enable
#     name: mgmt0

# Using gathered

# Existing device config state
# -------------------------------

# feature bfd
# interface Ethernet1/1
#   no switchport
#   no bfd
# interface Ethernet1/2
#   no switchport
#   no bfd echo
# interface mgmt0
#   ip address dhcp
#   vrf member management

- name: Gather bfd_interfaces facts from the device using nxos_bfd_interfaces
  cisco.nxos.nxos_bfd_interfaces:
    state: gathered

# Task output (redacted)
# -----------------------
# gathered:
# - name: Ethernet1/1
#   bfd: disable
#   echo: enable
# - name: Ethernet1/3
#   echo: disable
#   bfd: enable
# - name: mgmt0
#   bfd: enable
#   echo: enable

Return Values

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

Key Returned Description
after
list / elements=string
when changed
The configuration as structured data after module completion.

Sample:
The configuration returned will always be in the same format of the parameters above.
before
list / elements=string
always
The configuration as structured data prior to module invocation.

Sample:
The configuration returned will always be in the same format of the parameters above.
commands
list / elements=string
always
The set of commands pushed to the remote device.

Sample:
['interface Ethernet1/1', 'no bfd', 'no bfd echo']


Authors

  • Chris Van Heuveln (@chrisvanheuveln)