Note
This plugin is part of the netbox.netbox collection (version 3.3.0).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install netbox.netbox
.
To use it in a playbook, specify: netbox.netbox.netbox_device
.
New in version 0.1.0: of netbox.netbox
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
cert raw | Certificate path | ||
data dictionary / required | Defines the device configuration | ||
asset_tag string | Asset tag that is associated to the device | ||
cluster raw | Cluster that the device will be assigned to | ||
comments string | Comments that may include additional information in regards to the device | ||
custom_fields dictionary | must exist in Netbox | ||
device_role raw | Required if state=present and the device does not exist yet | ||
device_type raw | Required if state=present and the device does not exist yet | ||
face string |
| Required if rack is defined | |
local_context_data dictionary | Arbitrary JSON data to define the devices configuration variables. | ||
location raw added in 3.3.0 of netbox.netbox | The location the device will be associated to (NetBox 2.11+) | ||
name string / required | The name of the device | ||
platform raw | The platform of the device | ||
position integer | The position of the device in the rack defined above | ||
primary_ip4 raw | Primary IPv4 address assigned to the device | ||
primary_ip6 raw | Primary IPv6 address assigned to the device | ||
rack raw | The name of the rack to assign the device to | ||
serial string | Serial number of the device | ||
site raw | Required if state=present and the device does not exist yet | ||
status raw | The status of the device | ||
tags list / elements=raw | Any tags that the device may need to be associated with | ||
tenant raw | The tenant that the device will be assigned to | ||
vc_position integer | Position in the assigned virtual chassis | ||
vc_priority integer | Priority in the assigned virtual chassis | ||
virtual_chassis raw | Virtual chassis the device will be assigned to | ||
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 |
| 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. |
Note
local
and hosts localhost
- name: "Test Netbox modules" connection: local hosts: localhost gather_facts: False tasks: - name: Create device within Netbox with only required information netbox_device: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Device device_type: C9410R device_role: Core Switch site: Main state: present - name: Create device within Netbox with empty string name to generate UUID netbox_device: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: "" device_type: C9410R device_role: Core Switch site: Main state: present - name: Delete device within netbox netbox_device: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Device state: absent - name: Create device with tags netbox_device: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Another Test Device device_type: C9410R device_role: Core Switch site: Main local_context_data: bgp: "65000" tags: - Schnozzberry state: present - name: Update the rack and position of an existing device netbox_device: netbox_url: http://netbox.local netbox_token: thisIsMyToken data: name: Test Device rack: Test Rack position: 10 face: Front state: present
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
device 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 |
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/netbox/netbox/netbox_device_module.html