netbox.netbox.netbox_provider – Create, update or delete providers within Netbox

Note

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

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

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

New in version 0.1.0: of netbox.netbox

Synopsis

  • Creates, updates or removes providers 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 provider configuration
account
string
The account number of the provider
admin_contact
string
The admin contact of the provider
asn
integer
The provider ASN
comments
string
Comments related to the provider
custom_fields
dictionary
must exist in Netbox
name
string
The name of the provider
noc_contact
string
The NOC contact of the provider
portal_url
string
The URL of the provider
tags
list / elements=raw
Any tags that the device may need to be associated with
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 provider within Netbox with only required information
      netbox_provider:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test Provider
        state: present

    - name: Update provider with other fields
      netbox_provider:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test Provider
          asn: 65001
          account: 200129104
          portal_url: http://provider.net
          noc_contact: [email protected]
          admin_contact: [email protected]
          comments: "BAD PROVIDER"
        state: present

    - name: Delete provider within netbox
      netbox_provider:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: Test Provider
        state: absent

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

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



Authors

  • Mikhail Yohman (@FragmentedPacket)