Skip to content

inventory_item

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 inventory items 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
asset_tag
str
The asset tag of the inventory item
Version Added: 3.0.0
custom_fields
dict
Must exist in Nautobot and in key/value format
Version Added: 3.0.0
description
str
The description of the inventory item
Version Added: 3.0.0
device
raw
Name of the device the inventory item belongs to
Required if I(state=present) and the inventory item does not exist yet
Version Added: 3.0.0
discovered
bool
Set the discovery flag for the inventory item
Version Added: 3.0.0
id
str
The UUID of the object to operate on
Version Added: 5.13.0
label
str
The label of the inventory item
Version Added: 5.12.0
manufacturer
raw
The manufacturer of the inventory item
Version Added: 3.0.0
name
str
Name of the inventory item to be created
Required if I(state=present) and the inventory item does not exist yet
Version Added: 3.0.0
parent_inventory_item
raw
The parent item of the inventory item
Version Added: 5.12.0
part_id
str
The part ID of the inventory item
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
serial
str
The serial number of the inventory item
Version Added: 3.0.0
software_image_files
raw
Override the software image files associated with the software version for this inventory item
Version Added: 5.12.0
software_version
raw
The software version of the inventory item
Version Added: 5.12.0
state
str
Default: present
Choices: absent, present
Use C(present) or C(absent) for adding or removing.
tags
list / elements=raw
Any tags that this item may need to be associated with
Version Added: 3.0.0
token
str
required
The token created within Nautobot to authorize API access
Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
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 inventory_item module"
  connection: local
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Create inventory item within Nautobot with only required information
      networktocode.nautobot.inventory_item:
        url: http://nautobot.local
        token: thisIsMyToken
        device: test100
        name: "10G-SFP+"
        state: present

    - name: Update inventory item
      networktocode.nautobot.inventory_item:
        url: http://nautobot.local
        token: thisIsMyToken
        device: test100
        name: "10G-SFP+"
        manufacturer: "Cisco"
        part_id: "10G-SFP+"
        serial: "1234"
        asset_tag: "1234"
        description: "New SFP"
        state: present

    - name: Delete inventory item within nautobot
      networktocode.nautobot.inventory_item:
        url: http://nautobot.local
        token: thisIsMyToken
        device: test100
        name: "10G-SFP+"
        state: absent

    - name: Delete inventory item by id
      networktocode.nautobot.inventory_item:
        url: http://nautobot.local
        token: thisIsMyToken
        id: 00000000-0000-0000-0000-000000000000
        state: absent

Return Values

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

  • Mikhail Yohman (@fragmentedpacket)