netbox.netbox.netbox_l2vpn module – Create, update or delete L2VPNs 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 for details.

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

New in netbox.netbox 3.9.0

Synopsis

  • Creates, updates or removes L2VPNs from NetBox

Requirements

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

  • pynetbox

Parameters

Parameter

Comments

cert

any

Certificate path

data

dictionary / required

Defines the L2VPN configuration

comments

string

added in netbox.netbox 3.10.0

Comments that may include additional information in regards to the L2VPN

custom_fields

dictionary

Must exist in NetBox

description

string

The description of the L2VPN

export_targets

list / elements=any

Route targets to export

identifier

integer

The identifier of the L2VPN

import_targets

list / elements=any

Route targets to import

name

string / required

The name of the L2VPN

tags

list / elements=any

Any tags that the L2VPN may need to be associated with

tenant

any

The tenant that the L2VPN will be assigned to

type

any / required

The type of L2VPN

netbox_token

string / required

The NetBox API token.

netbox_url

string / required

The URL of the NetBox instance.

Must be accessible by the Ansible control host.

query_params

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.

state

string

validate_certs

any

If no, SSL certificates will not be validated.

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

Default: :ansible-option-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 L2VPN within NetBox with only required information
      netbox.netbox.netbox_l2vpn:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test L2VPN
          type: vxlan
        state: present

    - name: Delete L2VPN within netbox
      netbox.netbox.netbox_l2vpn:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test L2VPN
          type: vxlan
        state: absent

    - name: Create L2VPN with all required information
      netbox.netbox.netbox_l2vpn:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test L2VPN
          type: vpls
          identifier: 43256
          import_targets:
            - "65000:1"
          export_targets:
            - "65000:2"
          tenant: Test Tenant
          description: Just a test
          tags:
            - Schnozzberry
        state: present

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

l2vpn

dictionary

Serialized object as created or already existent within NetBox

Returned: success (when state=present)

msg

string

Message indicating failure or info about what has been achieved

Returned: always

Authors

  • Martin Rødvand (@rodvand)