community.general.nios – Query Infoblox NIOS objects

Note

This plugin is part of the community.general collection (version 3.8.3).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.nios.

DEPRECATED

Removed in

version 5.0.0

Why

Please install the infoblox.nios_modules collection and use the corresponding lookup from it.

Alternative

infoblox.nios_modules.nios_lookup

Synopsis

  • Uses the Infoblox WAPI API to fetch NIOS specified objects. This lookup supports adding additional keywords to filter the return data and specify the desired set of returned fields.

Requirements

The below requirements are needed on the local controller node that executes this lookup.

  • infoblox-client

Parameters

Parameter

Comments

_terms

string / required

The name of the object to return from NIOS

extattrs

string

a dict object that is used to filter on extattrs

filter

string

a dict object that is used to filter the return objects

provider

dictionary

A dict object containing connection details.

host

string

Specifies the DNS host name or address for connecting to the remote instance of NIOS WAPI over REST

Value can also be specified using INFOBLOX_HOST environment variable.

http_pool_connections

integer

Number of pools to be used by the infoblox_client.Connector object.

This is passed as-is to the underlying requests.adapters.HTTPAdapter class.

Default: 10

http_pool_maxsize

integer

Maximum number of connections per pool to be used by the infoblox_client.Connector object.

This is passed as-is to the underlying requests.adapters.HTTPAdapter class.

Default: 10

http_request_timeout

integer

The amount of time before to wait before receiving a response

Value can also be specified using INFOBLOX_HTTP_REQUEST_TIMEOUT environment variable.

Default: 10

max_results

integer

Specifies the maximum number of objects to be returned, if set to a negative number the appliance will return an error when the number of returned objects would exceed the setting.

Value can also be specified using INFOBLOX_MAX_RESULTS environment variable.

Default: 1000

max_retries

integer

Configures the number of attempted retries before the connection is declared usable

Value can also be specified using INFOBLOX_MAX_RETRIES environment variable.

Default: 3

password

string

Specifies the password to use to authenticate the connection to the remote instance of NIOS.

Value can also be specified using INFOBLOX_PASSWORD environment variable.

silent_ssl_warnings

boolean

Disable urllib3 SSL warnings in the infoblox_client.Connector object.

This is passed as-is to the underlying requests.adapters.HTTPAdapter class.

Choices:

  • no

  • yes ← (default)

username

string

Configures the username to use to authenticate the connection to the remote instance of NIOS.

Value can also be specified using INFOBLOX_USERNAME environment variable.

validate_certs

aliases: ssl_verify

boolean

Boolean value to enable or disable verifying SSL certificates

Value can also be specified using INFOBLOX_SSL_VERIFY environment variable.

Choices:

  • no ← (default)

  • yes

wapi_version

string

Specifies the version of WAPI to use

Value can also be specified using INFOBLOX_WAP_VERSION environment variable.

Until ansible 2.8 the default WAPI was 1.4

Default: “2.1”

return_fields

string

The list of field names to return for the specified object.

Notes

Note

  • This module must be run locally, which can be achieved by specifying connection: local.

  • Please read the Infoblox Guide for more detailed information on how to use Infoblox with Ansible.

Examples

- name: fetch all networkview objects
  ansible.builtin.set_fact:
    networkviews: "{{ lookup('community.general.nios', 'networkview',
                         provider={'host': 'nios01', 'username': 'admin', 'password': 'password'}) }}"

- name: fetch the default dns view
  ansible.builtin.set_fact:
    dns_views: "{{ lookup('community.general.nios', 'view', filter={'name': 'default'},
                      provider={'host': 'nios01', 'username': 'admin', 'password': 'password'}) }}"

# all of the examples below use credentials that are  set using env variables
# export INFOBLOX_HOST=nios01
# export INFOBLOX_USERNAME=admin
# export INFOBLOX_PASSWORD=admin

- name: fetch all host records and include extended attributes
  ansible.builtin.set_fact:
    host_records: "{{ lookup('community.general.nios', 'record:host', return_fields=['extattrs', 'name', 'view', 'comment']}) }}"


- name: use env variables to pass credentials
  ansible.builtin.set_fact:
    networkviews: "{{ lookup('community.general.nios', 'networkview') }}"

- name: get a host record
  ansible.builtin.set_fact:
    host: "{{ lookup('community.general.nios', 'record:host', filter={'name': 'hostname.ansible.com'}) }}"

- name: get the authoritative zone from a non default dns view
  ansible.builtin.set_fact:
    host: "{{ lookup('community.general.nios', 'zone_auth', filter={'fqdn': 'ansible.com', 'view': 'ansible-dns'}) }}"

Return Values

Common return values are documented here, the following are the fields unique to this lookup:

Key

Description

obj_type

dictionary

The object type specified in the terms argument

Returned: success

obj_field

string

One or more obj_type fields as specified by return_fields argument or the default set of fields as per the object type

Returned: success

Status

  • This lookup will be removed in version 5.0.0. [deprecated]

  • For more information see DEPRECATED.

Authors

  • Unknown (!UNKNOWN)