netbox.netbox.netbox_vrf – Create, update or delete vrfs within Netbox

Note

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

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

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

New in version 0.1.0: of netbox.netbox

Synopsis

  • Creates, updates or removes vrfs from Netbox

Requirements

The below requirements are needed on the host that executes this module.

  • pynetbox

Parameters

Parameter Choices/Defaults Comments
cert
raw
Certificate path
data
dictionary / required
Defines the vrf configuration
custom_fields
dictionary
must exist in Netbox
description
string
The description of the vrf
enforce_unique
boolean
    Choices:
  • no
  • yes
Prevent duplicate prefixes/IP addresses within this VRF
export_targets
list / elements=string
added in 2.0.0 of netbox.netbox
Export targets tied to VRF
import_targets
list / elements=string
added in 2.0.0 of netbox.netbox
Import targets tied to VRF
name
string / required
The name of the vrf
rd
string
The RD of the VRF. Must be quoted to pass as a string.
tags
list / elements=raw
Any tags that the vrf may need to be associated with
tenant
raw
The tenant that the vrf 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
    Choices:
  • 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 vrf within Netbox with only required information
      netbox_vrf:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test VRF
        state: present

    - name: Delete vrf within netbox
      netbox_vrf:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test VRF
        state: absent

    - name: Create vrf with all information
      netbox_vrf:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test VRF
          rd: "65000:1"
          tenant: Test Tenant
          enforce_unique: true
          import_targets:
            - "65000:65001"
          export_targets:
            - "65000:65001"
          description: VRF description
          tags:
            - Schnozzberry
        state: present

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

vrf
dictionary
success (when state=present)
Serialized object as created or already existent within Netbox



Authors

  • Mikhail Yohman (@FragmentedPacket)