networktocode.nautobot.device_interface module – Creates or removes interfaces on devices from Nautobot
Note
This module is part of the networktocode.nautobot collection (version 5.0.1).
To install it, use: ansible-galaxy collection install networktocode.nautobot
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: networktocode.nautobot.device_interface
.
New in networktocode.nautobot 1.0.0
Synopsis
Creates or removes interfaces from Nautobot
Requirements
The below requirements are needed on the host that executes this module.
pynautobot
Parameters
Parameter |
Comments |
---|---|
API Version Nautobot REST API |
|
Interface that will be the bridge of the interface being created |
|
Must exist in Nautobot and in key/value format |
|
The description of the interface |
|
Name of the device the interface will be associated with (case-sensitive) |
|
Sets whether interface shows enabled or disabled Choices: |
|
Physical label of the interface |
|
Parent LAG interface will be a member of |
|
The MAC address of the interface |
|
This interface is used only for out-of-band management Choices: |
|
The mode of the interface |
|
The MTU of the interface |
|
Name of the interface to be created |
|
Interface that will be the parent of the interface being created |
|
This can be used to override the specified values in ALLOWED_QUERY_PARAMS that is defined in plugins/module_utils/utils.py and provides control to users on what may make an object unique in their environment. |
|
Use Choices: |
|
The status of the interface Required if state=present and using api_version 1.4+ |
|
A list of tagged VLANS to be assigned to interface. Mode must be set to either |
|
Any tags that this item may need to be associated with |
|
The token created within Nautobot to authorize API access |
|
|
|
The untagged VLAN to be assigned to interface |
|
Choices: |
|
The URL of the Nautobot instance resolvable by the Ansible host (for example: http://nautobot.example.com:8000) |
|
If Default: :ansible-option-default:`true` |
Notes
Note
Tags should be defined as a YAML list
This should be ran with connection
local
and hostslocalhost
Examples
- name: "Test Nautobot interface module"
connection: local
hosts: localhost
gather_facts: False
tasks:
- name: Create interface within Nautobot with only required information
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet1
state: present
- name: Delete interface within nautobot
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet1
state: absent
- name: Create LAG with several specified options
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: port-channel1
type: Link Aggregation Group (LAG)
mtu: 1600
mgmt_only: false
mode: Access
state: present
- name: Create interface and assign it to parent LAG
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet1
enabled: false
type: 1000Base-t (1GE)
lag:
name: port-channel1
mtu: 1600
mgmt_only: false
mode: Access
state: present
- name: Create interface as a trunk port
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet25
enabled: false
type: 1000Base-t (1GE)
untagged_vlan:
name: Wireless
location: "{{ location['key'] }}"
tagged_vlans:
- name: Data
location: "{{ location['key'] }}"
- name: VoIP
location: "{{ location['key'] }}"
mtu: 1600
mgmt_only: true
mode: Tagged
state: present
- name: Update interface on child device on virtual chassis
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet2/0/1
enabled: false
update_vc_child: True
- name: |
Create an interface and update custom_field data point,
setting the value to True
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet1/1/1
enabled: false
custom_fields:
monitored: True
- name: Create child interface
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: GigabitEthernet1/1/1
type: Virtual
parent_interface:
name: GigabitEthernet1/1
- name: Create bridge interface
networktocode.nautobot.device_interface:
url: http://nautobot.local
token: thisIsMyToken
device: test100
name: Bridge1
bridge:
name: GigabitEthernet1/1
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
Serialized object as created or already existent within Nautobot Returned: on creation |
|
Message indicating failure or info about what has been achieved Returned: always |