Skip to content

Latest commit

 

History

History
916 lines (481 loc) · 19.5 KB

netbox_vrf_module.rst

File metadata and controls

916 lines (481 loc) · 19.5 KB
orphan

netbox.netbox.netbox_vrf module -- Create, update or delete vrfs within NetBox

Note

This module is part of the netbox.netbox collection (version 3.10.0).

To install it, use: ansible-galaxy collection install netbox.netbox. You need further requirements to be able to use this module, see Requirements <ansible_collections.netbox.netbox.netbox_vrf_module_requirements> for details.

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

ansible-version-added

New in netbox.netbox 0.1.0

Synopsis

  • Creates, updates or removes vrfs from NetBox

Requirements

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

  • pynetbox

Parameters

ansible-option-table

Parameter Comments

ansible-option-title

cert

ansible-option-type-line

any

Certificate path

ansible-option-title

data

ansible-option-type-line

dictionary / required

Defines the vrf configuration

ansible-option-title

comments

ansible-option-type-line

string

added in netbox.netbox 3.10.0

Comments that may include additional information in regards to the VRF

ansible-option-title

custom_fields

ansible-option-type-line

dictionary

must exist in NetBox

ansible-option-title

description

ansible-option-type-line

string

The description of the vrf

ansible-option-title

enforce_unique

ansible-option-type-line

boolean

Prevent duplicate prefixes/IP addresses within this VRF

ansible-option-line

Choices:

  • false
  • true

ansible-option-title

export_targets

ansible-option-type-line

list / elements=string

added in netbox.netbox 2.0.0

Export targets tied to VRF

ansible-option-title

import_targets

ansible-option-type-line

list / elements=string

added in netbox.netbox 2.0.0

Import targets tied to VRF

ansible-option-title

name

ansible-option-type-line

string / required

The name of the vrf

ansible-option-title

rd

ansible-option-type-line

string

The RD of the VRF. Must be quoted to pass as a string.

ansible-option-title

tags

ansible-option-type-line

list / elements=any

Any tags that the vrf may need to be associated with

ansible-option-title

tenant

ansible-option-type-line

any

The tenant that the vrf will be assigned to

ansible-option-title

netbox_token

ansible-option-type-line

string / required

The NetBox API token.

ansible-option-title

netbox_url

ansible-option-type-line

string / required

The URL of the NetBox instance.

Must be accessible by the Ansible control host.

ansible-option-title

query_params

ansible-option-type-line

list / elements=string

This can be used to override the specified values in ALLOWED_QUERY_PARAMS that are defined

in plugins/module_utils/netbox_utils.py and provides control to users on what may make

an object unique in their environment.

ansible-option-title

state

ansible-option-type-line

string

The state of the object.

ansible-option-line

Choices:

  • "present" ← (default)
  • "absent"

ansible-option-title

validate_certs

ansible-option-type-line

any

If no, SSL certificates will not be validated.

This should only be used on personally controlled sites using a self-signed certificates.

ansible-option-line

Default: true

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 <common_return_values>, the following are the fields unique to this module:

ansible-option-table

Key Description

ansible-option-title

msg

ansible-option-type-line

string

Message indicating failure or info about what has been achieved

ansible-option-line

Returned: always

ansible-option-title

vrf

ansible-option-type-line

dictionary

Serialized object as created or already existent within NetBox

ansible-option-line

Returned: success (when state=present)

Authors

  • Mikhail Yohman (@FragmentedPacket)

Issue Tracker Repository (Sources)