Skip to content

metadata_type

Collection Note

This module is part of the networktocode.nautobot collection. To install the collection, use:

ansible-galaxy collection install networktocode.nautobot
Added in version 5.5.0.

You need further requirements to be able to use this module, see the Requirements section for details.

Synopsis

  • Creates, updates or removes metadata types from Nautobot

Requirements

The following Python packages are needed on the host that executes this module:

Parameters

Parameter Defaults / Choices Comments
api_version
str
API Version Nautobot REST API
Version Added: 4.1.0
content_types
list / elements=str
Content types that this metadata type should be available for
Required if I(state=present) and the metadata type does not exist yet
custom_fields
dict
Must exist in Nautobot and in key/value format
Version Added: 3.0.0
data_type
str
Choices: text, integer, boolean, date, url, select, multi-select, json, markdown, contact-or-team, datetime, float Data type of this field
Required if I(state=present) and the metadata type does not exist yet
description
str
The description of the metdata type
id
str
The UUID of the object to operate on
Version Added: 5.13.0
metadata_choices
dict
List of choices to associate with this metadata type (for select or multi-select data types).
Version Added: 6.2.0
metadata_choices.objects List of choices to manage.
metadata_choices.state Default: merge
Choices: merge, replace, delete
C(merge) adds choices without removing existing ones.
C(replace) enforces exactly the listed choices, removing any extras.
C(delete) removes the listed choices.
name
str
The name of the metadata type
Required if I(state=present) and the metadata type does not exist yet
query_params
list / elements=str
This can be used to override the specified values in ALLOWED_QUERY_PARAMS that is defined
in plugins/module_utils/utils.py and provides control to users on what may make
an object unique in their environment.
Version Added: 3.0.0
state
str
Default: present
Choices: absent, present
Use C(present) or C(absent) for adding or removing.
tags
list / elements=raw
Any tags that this item may need to be associated with
Version Added: 3.0.0
token
str
required
The token created within Nautobot to authorize API access
Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
url
str
required
The URL of the Nautobot instance resolvable by the Ansible host (for example: http://nautobot.example.com:8000)
Can be omitted if the E(NAUTOBOT_URL) environment variable is configured.
validate_certs
raw
Default: True
If C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.
Can be omitted if the E(NAUTOBOT_VALIDATE_CERTS) environment variable is configured.

Notes

Note

  • This should be ran with connection C(local) and hosts C(localhost)

Examples

- name: Create a metadata type
  networktocode.nautobot.metadata_type:
    url: http://nautobot.local
    token: thisIsMyToken
    name: TopSecretInfo
    description: The topest secretest info
    data_type: text
    content_types:
      - dcim.device
    state: present

- name: Delete a metadata type
  networktocode.nautobot.metadata_type:
    url: http://nautobot.local
    token: thisIsMyToken
    name: TopSecretInfo
    state: absent

- name: Create a metadata type with inline metadata choice associations
  networktocode.nautobot.metadata_type:
    url: http://nautobot.local
    token: thisIsMyToken
    name: TopSecretInfo
    data_type: text
    content_types:
      - dcim.device
    metadata_choices:
      state: merge
      objects:
        - value: "Choice 1"
          weight: 100
        - value: "Choice 2"
          weight: 200
    state: present

- name: Delete a metadata type by id
  networktocode.nautobot.metadata_type:
    url: http://nautobot.local
    token: thisIsMyToken
    id: 00000000-0000-0000-0000-000000000000
    state: absent

Return Values

Key Data Type Description Returned
metadata_type dict Serialized object as created or already existent within Nautobot success (when I(state=present))
msg str Message indicating failure or info about what has been achieved always

Authors

  • Travis Smith (@tsm1th)