Skip to content

object_metadata

Collection Note

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

ansible-galaxy collection install networktocode.nautobot
You need further requirements to be able to use this module, see the Requirements section for details.

Synopsis

  • Creates or removes object metadata from Nautobot

Requirements

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

Parameters

Parameter Data Type Environment Variable Comments
api_version str API Version Nautobot REST API
Version Added: 4.1.0
assigned_object_id
required
str The UUID of the object in the relationship
assigned_object_type
required
str The app_label.model for the object in the relationship
contact raw The contact of the metadata
metadata_type
required
raw The name of the metadata type
query_params list 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
scoped_fields list List of scoped fields, only direct fields on the model
state str Use C(present) or C(absent) for adding or removing.
team raw The team of the metadata
token
required
str The token created within Nautobot to authorize API access Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
url
required
str 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 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.
value str The value of the metadata

Examples

- name: "Test object metadata creation/deletion"
  connection: local
  hosts: localhost
  gather_facts: False
  tasks:
    - name: Create object metadata
      networktocode.nautobot.object_metadata:
        url: http://nautobot.local
        token: thisIsMyToken
        metadata_type: "TopSecretInfo"
        assigned_object_type: dcim.device
        assigned_object_id: abcdefgh-0123-abcd-0123-abcdefghijkl
        value: foobar
        scoped_fields:
            - name
    - name: Delete object metadata
      networktocode.nautobot.object_metadata:
        url: http://nautobot.local
        token: thisIsMyToken
        metadata_type: "TopSecretInfo"
        assigned_object_type: dcim.device
        assigned_object_id: abcdefgh-0123-abcd-0123-abcdefghijkl
        value: foobar
        scoped_fields:
            - name
        state: absent

Return Values

Key Data Type Description Returned
msg str Message indicating failure or info about what has been achieved always
object_metadata dict Serialized object as created/existent/updated/deleted within Nautobot always

Authors

  • Network To Code (@networktocode)
  • Travis Smith (@tsm1th)