ansible.builtin.netbox (v2.9.27) — inventory

NetBox inventory source

Authors: Remy Leone (@sieben), Anthony Ruhier (@Anthony25), Nikhil Singh Baliyan (@nikkytub)

Install Ansible via pip

Install with pip install ansible==2.9.27

Description

Get inventory hosts from NetBox

Inputs

    
token:
    description: NetBox token.
    env:
    - name: NETBOX_TOKEN
    - name: NETBOX_API_KEY
    required: true

groups:
    default: {}
    description: Add hosts to group based on Jinja2 conditionals.
    type: dict

plugin:
    choices:
    - netbox
    description: token that ensures this is a source file for the 'netbox' plugin.
    required: true

strict:
    default: false
    description:
    - If V(yes) make invalid entries a fatal error, otherwise skip and continue.
    - Since it is possible to use facts in the expressions they might not always be available
      and we ignore those errors by default.
    type: bool

compose:
    default: {}
    description: List of custom ansible host vars to create from the device object fetched
      from NetBox
    type: dict

timeout:
    default: 60
    description: Timeout for Netbox requests in seconds
    type: int

group_by:
    choices:
    - sites
    - tenants
    - racks
    - tags
    - device_roles
    - device_types
    - manufacturers
    - platforms
    default: []
    description: Keys used to create groups.
    type: list

api_endpoint:
    description: Endpoint of the NetBox API
    env:
    - name: NETBOX_API
    required: true

keyed_groups:
    default: []
    description: Add hosts to group based on the values of a variable.
    elements: dict
    suboptions:
      default_value:
        description:
        - The default value when the host variable's value is an empty string.
        - This option is mutually exclusive with O(keyed_groups[].trailing_separator).
        type: str
        version_added: '2.12'
        version_added_collection: ansible.builtin
      key:
        description:
        - The key from input dictionary used to generate groups
        type: str
      parent_group:
        description: parent group for keyed group
        type: str
      prefix:
        default: ''
        description: A keyed group name will start with this prefix
        type: str
      separator:
        default: _
        description: separator used to build the keyed group name
        type: str
      trailing_separator:
        default: true
        description:
        - Set this option to V(False) to omit the O(keyed_groups[].separator) after the
          host variable when the value is an empty string.
        - This option is mutually exclusive with O(keyed_groups[].default_value).
        type: bool
        version_added: '2.12'
        version_added_collection: ansible.builtin
    type: list

query_filters:
    default: []
    description: List of parameters passed to the query string (Multiple values may be
      separated by commas)
    type: list

config_context:
    default: false
    description:
    - If True, it adds config-context in host vars.
    - Config-context enables the association of arbitrary data to devices and virtual
      machines grouped by region, site, role, platform, and/or tenant. Please check official
      netbox docs for more info.
    type: boolean

use_extra_vars:
    default: false
    description: Merge extra vars into the available variables for composition (highest
      precedence).
    env:
    - name: ANSIBLE_INVENTORY_USE_EXTRA_VARS
    ini:
    - key: use_extra_vars
      section: inventory_plugins
    type: bool
    version_added: '2.11'
    version_added_collection: ansible.builtin

validate_certs:
    default: true
    description:
    - Allows connection when SSL certificates are not valid. Set to C(false) when certificates
      are not trusted.
    type: boolean

leading_separator:
    default: true
    description:
    - Use in conjunction with keyed_groups.
    - By default, a keyed group that does not have a prefix or a separator provided will
      have a name that starts with an underscore.
    - This is because the default prefix is "" and the default separator is "_".
    - Set this option to False to omit the leading underscore (or other separator) if
      no prefix is given.
    - If the group name is derived from a mapping the separator is still used to concatenate
      the items.
    - To not use a separator in the group name at all, set the separator for the keyed
      group to an empty string instead.
    type: boolean
    version_added: '2.11'
    version_added_collection: ansible.builtin