netbox.netbox.netbox_rack – Create, update or delete racks within Netbox

From Get docs
Ansible/docs/2.11/collections/netbox/netbox/netbox rack module


netbox.netbox.netbox_rack – Create, update or delete racks within Netbox

Note

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

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

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


New in version 0.1.0: of netbox.netbox


Synopsis

  • Creates, updates or removes racks 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 rack configuration

asset_tag

string

Asset tag that is associated to the rack

comments

string

Comments that may include additional information in regards to the rack

custom_fields

dictionary

must exist in Netbox

desc_units

boolean

  • no
  • yes

Rack units will be numbered top-to-bottom

facility_id

string

The unique rack ID assigned by the facility

name

string / required

The name of the rack

outer_depth

integer

The outer depth of the rack

outer_unit

string

  • Millimeters
  • Inches

Whether the rack unit is in Millimeters or Inches and is required if outer_width/outer_depth is specified

outer_width

integer

The outer width of the rack

rack_group

raw

The rack group the rack will be associated to

rack_role

raw

The rack role the rack will be associated to

serial

string

Serial number of the rack

site

raw

Required if state=present and the rack does not exist yet

status

raw

The status of the rack

tags

list / elements=string

Any tags that the rack may need to be associated with

tenant

raw

The tenant that the device will be assigned to

type

string

  • 2-post frame
  • 4-post frame
  • 4-post cabinet
  • Wall-mounted frame
  • Wall-mounted cabinet

The type of rack

u_height

integer

The height of the rack in rack units

width

integer

  • 10
  • 19
  • 21
  • 23

The rail-to-rail width

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

  • 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 rack within Netbox with only required information
      netbox_rack:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test rack
          site: Test Site
        state: present

    - name: Delete rack within netbox
      netbox_rack:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test Rack
        state: absent

Return Values

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

Key Returned Description

msg

string

always

Message indicating failure or info about what has been achieved


rack

dictionary

success (when state=present)

Serialized object as created or already existent within Netbox





Authors

  • Mikhail Yohman (@FragmentedPacket)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/netbox/netbox/netbox_rack_module.html