Skip to content

device_interface_template

Collection Note

This module is part of the networktocode.nautobot collection. To install the collection, use:

ansible-galaxy collection install networktocode.nautobot
Added in version 1.0.0.

You need further requirements to be able to use this module, see the Requirements section for details.

Synopsis

  • Creates or removes interfaces from Nautobot

Requirements

The following Python packages are needed on the host that executes this module:

Parameters

Parameter Defaults / Choices Comments
api_version
str
API Version Nautobot REST API
Version Added: 4.1.0
contacts
dict
Associate contacts
Version Added: 6.3.0
contacts.objects List of contacts to associate.
contacts.state Default: merge
Choices: merge, replace, delete
C(merge) adds associations without removing existing ones.
C(replace) enforces exactly the listed associations, removing any extras.
C(delete) removes the listed associations.
custom_fields
dict
Must exist in Nautobot and in key/value format
Version Added: 3.0.0
description
str
Description of the interface
Version Added: 5.2.0
device_type
raw
Name of the device the interface template will be associated with (case-sensitive)
Requires one of I(device_type) or I(module_type) when I(state=present) and the interface template does not exist yet
Version Added: 3.0.0
id
str
The UUID of the object to operate on
Version Added: 5.13.0
label
str
Label of the interface template to be created
Version Added: 5.2.0
mgmt_only
bool
This interface template is used only for out-of-band management
Version Added: 3.0.0
module_type
raw
The module type the interface template is attached to
Requires one of I(device_type) or I(module_type) when I(state=present) and the interface template does not exist yet
Version Added: 5.4.0
name
str
Name of the interface template to be created
Required if I(state=present) and the interface template does not exist yet
Version Added: 3.0.0
query_params
list / elements=str
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
state
str
Default: present
Choices: absent, present
Use C(present) or C(absent) for adding or removing.
teams
dict
Associate teams
Version Added: 6.3.0
teams.objects List of teams to associate.
teams.state Default: merge
Choices: merge, replace, delete
C(merge) adds associations without removing existing ones.
C(replace) enforces exactly the listed associations, removing any extras.
C(delete) removes the listed associations.
token
str
required
The token created within Nautobot to authorize API access
Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
type
str
Form factor of the interface: ex. 1000Base-T (1GE), Virtual, 10GBASE-T (10GE) This has to be specified exactly as what is found within UI
Required if I(state=present) and the interface template does not exist yet
Version Added: 3.0.0
url
str
required
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
Default: True
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.

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 template module"
  connection: local
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Create interface template within Nautobot with only required information
      networktocode.nautobot.device_interface_template:
        url: http://nautobot.local
        token: thisIsMyToken
        device_type: Arista Test
        name: 10GBASE-T (10GE)
        type: 10gbase-t
        state: present
    - name: Delete interface template within nautobot
      networktocode.nautobot.device_interface_template:
        url: http://nautobot.local
        token: thisIsMyToken
        device_type: Arista Test
        name: 10GBASE-T (10GE)
        type: 10gbase-t
        state: absent

    - name: Delete interface template by id
      networktocode.nautobot.device_interface_template:
        url: http://nautobot.local
        token: thisIsMyToken
        id: 00000000-0000-0000-0000-000000000000
        state: absent

Return Values

Key Data Type Description Returned
interface_template 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

  • Tobias Groß (@toerb)