netbox.netbox.netbox_cable – Create, update or delete cables within Netbox

Note

This plugin is part of the netbox.netbox collection (version 1.2.1).

To install it use: ansible-galaxy collection install netbox.netbox.

To use it in a playbook, specify: netbox.netbox.netbox_cable.

New in version 0.3.0: of netbox.netbox

Synopsis

  • Creates, updates or removes cables from Netbox

Requirements

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

  • pynetbox

Parameters

Parameter Choices/Defaults Comments
data
dictionary / required
Defines the cable configuration
color
string
The color of the cable
label
string
The label of the cable
length
integer
The length of the cable
length_unit
string
    Choices:
  • m
  • cm
  • ft
  • in
The unit in which the length of the cable is measured
status
string
    Choices:
  • connected
  • planned
  • decommissioning
The status of the cable
termination_a
raw / required
The termination a
termination_a_type
string / required
    Choices:
  • circuits.circuittermination
  • dcim.consoleport
  • dcim.consoleserverport
  • dcim.frontport
  • dcim.interface
  • dcim.powerfeed
  • dcim.poweroutlet
  • dcim.powerport
  • dcim.rearport
The type of the termination a
termination_b
raw / required
The termination b
termination_b_type
string / required
    Choices:
  • circuits.circuittermination
  • dcim.consoleport
  • dcim.consoleserverport
  • dcim.frontport
  • dcim.interface
  • dcim.powerfeed
  • dcim.poweroutlet
  • dcim.powerport
  • dcim.rearport
The type of the termination b
type
string
    Choices:
  • cat3
  • cat5
  • cat5e
  • cat6
  • cat6a
  • cat7
  • dac-active
  • dac-passive
  • mrj21-trunk
  • coaxial
  • mmf
  • mmf-om1
  • mmf-om2
  • mmf-om3
  • mmf-om4
  • smf
  • smf-os1
  • smf-os2
  • aoc
  • power
The type of the cable
netbox_token
string / required
The token created within Netbox to authorize API access
netbox_url
string / required
URL of the Netbox instance resolvable by Ansible control host
query_params
list / elements=string
This can be used to override the specified values in ALLOWED_QUERY_PARAMS that is defined
in plugins/module_utils/netbox_utils.py and provides control to users on what may make
an object unique in their environment.
state
string
    Choices:
  • absent
  • present ←
Use present or absent for adding or removing.
validate_certs
raw
Default:
"yes"
If no, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.

Notes

Note

  • Tags should be defined as a YAML list

  • This should be ran with connection local and hosts localhost

Examples

- name: "Test Netbox modules"
  connection: local
  hosts: localhost
  gather_facts: False

  tasks:
    - name: Create cable within Netbox with only required information
      netbox_cable:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          termination_a_type: dcim.interface
          termination_a:
            device: Test Nexus Child One
            name: Ethernet2/2
          termination_b_type: dcim.interface
          termination_b:
            device: Test Nexus Child One
            name: Ethernet2/1
        state: present

    - name: Update cable with other fields
      netbox_cable:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          termination_a_type: dcim.interface
          termination_a:
            device: Test Nexus Child One
            name: Ethernet2/2
          termination_b_type: dcim.interface
          termination_b:
            device: Test Nexus Child One
            name: Ethernet2/1
          type: mmf-om4
          status: planned
          label: label123
          color: abcdef
          length: 30
          length_unit: m
        state: present

    - name: Delete cable within netbox
      netbox_cable:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          termination_a_type: dcim.interface
          termination_a:
            device: Test Nexus Child One
            name: Ethernet2/2
          termination_b_type: dcim.interface
          termination_b:
            device: Test Nexus Child One
            name: Ethernet2/1
        state: absent

Return Values

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

Key Returned Description
cable
dictionary
success (when state=present)
Serialized object as created or already existent within Netbox

msg
string
always
Message indicating failure or info about what has been achieved



Authors

  • Tobias Groß (@toerb)