vm_interface¶
Collection Note
This module is part of the networktocode.nautobot collection. To install the collection, use:
You need further requirements to be able to use this module, see the Requirements section for details.Synopsis¶
- Creates or removes interfaces from virtual machines in Nautobot
Requirements¶
The following Python packages are needed on the host that executes this module:
Parameters¶
Parameter | Data Type | Environment Variable | Comments |
---|---|---|---|
api_version | str | API Version Nautobot REST API Version Added: 4.1.0 |
|
custom_fields | dict | Must exist in Nautobot and in key/value format Version Added: 3.0.0 |
|
description | str | The description of the interface Version Added: 3.0.0 |
|
enabled | bool | Sets whether interface shows enabled or disabled Version Added: 3.0.0 |
|
mac_address | str | The MAC address of the interface Version Added: 3.0.0 |
|
mode | raw | The mode of the interface Version Added: 3.0.0 |
|
mtu | int | The MTU of the interface Version Added: 3.0.0 |
|
name required |
str | Name of the interface to be created Version Added: 3.0.0 |
|
query_params | list | 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. Version Added: 3.0.0 |
|
role | raw | The role of the interface Version Added: 5.3.0 |
|
state | str | Use C(present) or C(absent) for adding or removing. | |
status | raw | The status of the interface. Required if I(state=present) and does not exist yet Version Added: 3.0.0 |
|
tagged_vlans | raw | A list of tagged VLANS to be assigned to interface. Mode must be set to either C(Tagged) or C(Tagged All) Version Added: 3.0.0 |
|
tags | list | Any tags that this item may need to be associated with Version Added: 3.0.0 |
|
token required |
str | The token created within Nautobot to authorize API access Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured. | |
untagged_vlan | raw | The untagged VLAN to be assigned to interface Version Added: 3.0.0 |
|
url required |
str | The URL of the Nautobot instance resolvable by the Ansible host (for example: http://nautobot.example.com:8000) Can be omitted if the E(NAUTOBOT_URL) environment variable is configured. | |
validate_certs | raw | If C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates. Can be omitted if the E(NAUTOBOT_VALIDATE_CERTS) environment variable is configured. | |
virtual_machine required |
raw | Name of the virtual machine the interface will be associated with (case-sensitive) Version Added: 3.0.0 |
Notes¶
Note
- Tags should be defined as a YAML list
- This should be ran with connection C(local) and hosts C(localhost)
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.vm_interface:
url: http://nautobot.local
token: thisIsMyToken
virtual_machine: test100
name: GigabitEthernet1
state: present
- name: Delete interface within nautobot
networktocode.nautobot.vm_interface:
url: http://nautobot.local
token: thisIsMyToken
virtual_machine: test100
name: GigabitEthernet1
state: absent
- name: Create interface as a trunk port
networktocode.nautobot.vm_interface:
url: http://nautobot.local
token: thisIsMyToken
virtual_machine: test100
name: GigabitEthernet25
enabled: false
untagged_vlan:
name: Wireless
location: "{{ test_location['key'] }}"
tagged_vlans:
- name: Data
location: "{{ test_location['key'] }}"
- name: VoIP
location: "{{ test_location['key'] }}"
mtu: 1600
role: Server
mode: Tagged
state: present
- name: |
Create an interface and update custom_field data point,
setting the value to True
networktocode.nautobot.vm_interface:
url: http://nautobot.local
token: thisIsMyToken
virtual_machine: test100
name: GigabitEthernet26
enabled: false
custom_fields:
monitored: True
Return Values¶
Key | Data Type | Description | Returned |
---|---|---|---|
interface | dict | Serialized object as created or already existent within Nautobot | on creation |
msg | str | Message indicating failure or info about what has been achieved | always |
Authors¶
- Benjamin Vergnaud (@bvergnaud)