Skip to content

Latest commit

 

History

History
1182 lines (618 loc) · 26.3 KB

netbox_custom_field_module.rst

File metadata and controls

1182 lines (618 loc) · 26.3 KB
orphan

netbox.netbox.netbox_custom_field module -- Creates, updates or deletes custom fields within NetBox

Note

This module is part of the netbox.netbox collection (version 3.12.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_custom_field_module_requirements> for details.

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

ansible-version-added

New in netbox.netbox 3.6.0

Synopsis

  • Creates, updates or removes custom fields 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 custom field

ansible-option-title

choices

ansible-option-type-line

list / elements=string

List of available choices (for selection fields)

ansible-option-title

content_types

ansible-option-type-line

list / elements=any

The content type(s) to apply this custom field to

ansible-option-title

default

ansible-option-type-line

any

Default value of the custom field

ansible-option-title

description

ansible-option-type-line

string

Description of the custom field

ansible-option-title

filter_logic

ansible-option-type-line

any

Filter logic of the custom field

ansible-option-title

group_name

ansible-option-type-line

string

added in netbox.netbox 3.10.0

The group to associate the custom field with

ansible-option-title

label

ansible-option-type-line

string

Label of the custom field

ansible-option-title

name

ansible-option-type-line

string / required

Name of the custom field

ansible-option-title

object_type

ansible-option-type-line

string

added in netbox.netbox 3.7.0

The object type of the custom field (if any)

ansible-option-title

required

ansible-option-type-line

boolean

Whether the custom field is required

ansible-option-line

Choices:

  • false
  • true

ansible-option-title

search_weight

ansible-option-type-line

integer

added in netbox.netbox 3.10.0

Weighting for search. Lower values are considered more important. Fields with a search weight of zero will be ignored.

ansible-option-title

type

ansible-option-type-line

string

The type of custom field

ansible-option-line

Choices:

  • "text"
  • "longtext"
  • "integer"
  • "decimal"
  • "boolean"
  • "date"
  • "url"
  • "json"
  • "select"
  • "multiselect"
  • "object"
  • "multiobject"

ansible-option-title

ui_visibility

ansible-option-type-line

string

added in netbox.netbox 3.10.0

The UI visibility of the custom field

ansible-option-line

Choices:

  • "read-write"
  • "read-only"
  • "hidden"

ansible-option-title

validation_maximum

ansible-option-type-line

integer

The maximum allowed value (for numeric fields)

ansible-option-title

validation_minimum

ansible-option-type-line

integer

The minimum allowed value (for numeric fields)

ansible-option-title

validation_regex

ansible-option-type-line

string

The regular expression to enforce on text fields

ansible-option-title

weight

ansible-option-type-line

integer

Fields with higher weights appear lower in a form

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

- This should be ran with connection local and hosts localhost

Examples

- name: "Test NetBox custom_fields module"
  connection: local
  hosts: localhost  
  tasks:
    - name: Create a custom field on device and virtual machine
      netbox.netbox.netbox_custom_field:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          content_types:
            - dcim.device
            - virtualization.virtualmachine
          name: A Custom Field
          type: text

    - name: Update the custom field to make it required
      netbox.netbox.netbox_custom_field:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: A Custom Field
          required: yes    

    - name: Update the custom field to make it read only
      netbox.netbox.netbox_custom_field:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: A Custom Field
          ui_visibility: read-only      

    - name: Delete the custom field
      netbox.netbox.netbox_custom_field:
        netbox_url: http://netbox.local
        netbox_token: thisIsMyToken
        data:
          name: A Custom Field
        state: absent

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

custom_field

ansible-option-type-line

dictionary

Serialized object as created/existent/updated/deleted within NetBox

ansible-option-line

Returned: always

ansible-option-title

msg

ansible-option-type-line

string

Message indicating failure or info about what has been achieved

ansible-option-line

Returned: always

Authors

  • Martin Rødvand (@rodvand)

Issue Tracker Repository (Sources)