Skip to content

rack

Collection Note

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

ansible-galaxy collection install networktocode.nautobot
You need further requirements to be able to use this module, see the Requirements section for details.

Synopsis

  • Creates, updates or removes racks from 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
asset_tag str Asset tag that is associated to the rack.
Version Added: 3.0.0
comments str Comments that may include additional information in regards to the rack.
Version Added: 3.0.0
custom_fields dict Must exist in Nautobot and in key/value format
Version Added: 3.0.0
desc_units bool Rack units will be numbered top-to-bottom.
Version Added: 3.0.0
facility_id str The unique rack ID assigned by the facility.
Version Added: 3.0.0
location raw Required if I(state=present) and the rack does not exist yet.
Version Added: 3.0.0
name
required
str The name of the rack.
Version Added: 3.0.0
outer_depth int The outer depth of the rack.
Version Added: 3.0.0
outer_unit str Whether the rack unit is in Millimeters or Inches and is I(required) if outer_width/outer_depth is specified.
Version Added: 3.0.0
outer_width int The outer width of the rack.
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
rack_group raw The rack group the rack will be associated to.
Version Added: 3.0.0
role raw The rack role the rack will be associated to.
Version Added: 3.0.0
serial str Serial number of the rack.
Version Added: 3.0.0
state str Use C(present) or C(absent) for adding or removing.
status raw The status of the rack Required if I(state=present) and does not exist yet.
Version Added: 3.0.0
tags list Any tags that this item may need to be associated with
Version Added: 3.0.0
tenant raw The tenant that the device will be assigned to.
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.
type str The type of rack.
Version Added: 3.0.0
u_height int The height of the rack in rack units.
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.
width int The rail-to-rail width.
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).
  • The module supports C(check_mode).

Examples

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

  tasks:
    - name: Create rack within Nautobot with only required information
      networktocode.nautobot.rack:
        url: http://nautobot.local
        token: thisIsMyToken
        name: Test rack
        location:
          name: My Location
          parent: Parent Location
        status: active
        state: present

    - name: Delete rack within nautobot
      networktocode.nautobot.rack:
        url: http://nautobot.local
        token: thisIsMyToken
        name: Test Rack
        state: absent

Return Values

Key Data Type Description Returned
msg str Message indicating failure or info about what has been achieved. always
rack dict Serialized object as created or already existent within Nautobot. success (when I(state=present))

Authors

  • Nmikhail Yohman (@fragmentedpacket)