netbox_prefix – Creates or removes prefixes from Netbox
netbox_prefix – Creates or removes prefixes from Netbox
New in version 2.8.
Synopsis
- Creates or removes prefixes from Netbox
Requirements
The below requirements are needed on the host that executes this module.
- pynetbox
Parameters
Parameter | Choices/Defaults | Comments | |
---|---|---|---|
data - / required |
Defines the prefix configuration | ||
custom_fields dictionary |
Must exist in Netbox and in key/value format | ||
description string |
The description of the prefix | ||
family integer |
|
Specifies which address family the prefix prefix belongs to | |
is_pool boolean |
|
All IP Addresses within this prefix are considered usable | |
parent string |
Required if state is | ||
prefix string |
Required if state is | ||
prefix_length string |
Required ONLY if state is | ||
role string |
The role of the prefix | ||
site string |
Site that prefix is associated with | ||
status string |
|
The status of the prefix | |
tags list |
Any tags that the prefix may need to be associated with | ||
tenant string |
The tenant that the prefix will be assigned to | ||
vlan dictionary |
The VLAN the prefix will be assigned to | ||
vrf string |
VRF that prefix is associated with | ||
first_available boolean |
|
If | |
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 | ||
state - |
|
Use | |
validate_certs boolean |
|
If |
Notes
Note
- Tags should be defined as a YAML list
- This should be ran with connection
local
and hostslocalhost
Examples
- name: "Test Netbox prefix module"
connection: local
hosts: localhost
gather_facts: False
tasks:
- name: Create prefix within Netbox with only required information
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
prefix: 10.156.0.0/19
state: present
- name: Delete prefix within netbox
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
prefix: 10.156.0.0/19
state: absent
- name: Create prefix with several specified options
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
family: 4
prefix: 10.156.32.0/19
site: Test Site
vrf: Test VRF
tenant: Test Tenant
vlan:
name: Test VLAN
site: Test Site
tenant: Test Tenant
vlan_group: Test Vlan Group
status: Reserved
role: Network of care
description: Test description
is_pool: true
tags:
- Schnozzberry
state: present
- name: Get a new /24 inside 10.156.0.0/19 within Netbox - Parent doesn't exist
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
parent: 10.156.0.0/19
prefix_length: 24
state: present
first_available: yes
- name: Create prefix within Netbox with only required information
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
prefix: 10.156.0.0/19
state: present
- name: Get a new /24 inside 10.156.0.0/19 within Netbox
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
parent: 10.156.0.0/19
prefix_length: 24
state: present
first_available: yes
- name: Get a new /24 inside 10.157.0.0/19 within Netbox with additional values
netbox_prefix:
netbox_url: http://netbox.local
netbox_token: thisIsMyToken
data:
parent: 10.157.0.0/19
prefix_length: 24
vrf: Test VRF
site: Test Site
state: present
first_available: yes
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
|
prefix dictionary |
on creation |
Serialized object as created or already existent within Netbox
|
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- Mikhail Yohman (@FragmentedPacket)
- Anthony Ruhier (@Anthony25)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.8/modules/netbox_prefix_module.html