community.network.avi – Look up Avi objects.
Note
This plugin is part of the community.network collection (version 1.3.0).
To install it use: ansible-galaxy collection install community.network.
To use it in a playbook, specify: community.network.avi.
Synopsis
- Given an object_type, fetch all the objects of that type or fetch the specific object that matches the name/uuid given via options.
 - For single object lookup. If you want the output to be a list, you may want to pass option wantlist=True to the plugin.
 
Parameters
| Parameter | Choices/Defaults | Configuration | Comments | |
|---|---|---|---|---|
|   api_context    dictionary    |    Avi API context that includes current session ID and CSRF Token.  This allows user to perform single login and re-use the session.   |  |||
|   api_version    string    |   Default: "16.4.4"   |    Avi API version of to use for Avi API and objects.   |  ||
|   avi_credentials    dictionary    |    Avi Credentials dictionary which can be used in lieu of enumerating Avi Controller login details.   |  |||
|   api_version    string    |   Default: "16.4.4"   |    Avi controller version   |  ||
|   controller    string    |    Avi controller IP or SQDN   |  |||
|   csrftoken    string    |    Avi controller API csrftoken to reuse existing session with session id   |  |||
|   password    string    |    Avi controller password   |  |||
|   port    string    |    Avi controller port   |  |||
|   session_id    string    |    Avi controller API session id to reuse existing session with csrftoken   |  |||
|   tenant    string    |   Default: "admin"   |    Avi controller tenant   |  ||
|   tenant_uuid    string    |    Avi controller tenant UUID   |  |||
|   timeout    string    |   Default: 300   |    Avi controller request timeout   |  ||
|   token    string    |    Avi controller API token   |  |||
|   username    string    |    Avi controller username   |  |||
|   avi_disable_session_cache_as_fact    boolean    |   
  |    It disables avi session information to be cached as a fact.   |  ||
|   controller    string    |   Default: ""   |    IP address or hostname of the controller. The default value is the environment variable   AVI_CONTROLLER. |  ||
|   obj_name    string    |    name of the object to query   |  |||
|   obj_type    string / required    |    type of object to query   |  |||
|   obj_uuid    string    |    UUID of the object to query   |  |||
|   password    string    |   Default: ""   |    Password of Avi user in Avi controller. The default value is the environment variable   AVI_PASSWORD. |  ||
|   tenant    string    |   Default: "admin"   |    Name of tenant used for all Avi API calls and context of object.   |  ||
|   tenant_uuid    string    |   Default: ""   |    UUID of tenant used for all Avi API calls and context of object.   |  ||
|   username    string    |   Default: ""   |    Username used for accessing Avi controller. The default value is the environment variable   AVI_USERNAME. |  ||
Notes
Note
- For more information on using Ansible to manage Avi Network devices see https://www.ansible.com/ansible-avi-networks.
 
Examples
# Lookup query for all the objects of a specific type.
- ansible.builtin.debug: msg="{{ lookup('community.network.avi', avi_credentials=avi_credentials, obj_type='virtualservice') }}"
# Lookup query for an object with the given name and type.
- ansible.builtin.debug: msg="{{ lookup('community.network.avi', avi_credentials=avi_credentials, obj_name='vs1', obj_type='virtualservice', wantlist=True) }}"
# Lookup query for an object with the given UUID and type.
- ansible.builtin.debug: msg="{{ lookup('community.network.avi', obj_uuid='virtualservice-5c0e183a-690a-45d8-8d6f-88c30a52550d', obj_type='virtualservice') }}"
# We can replace lookup with query function to always the get the output as list.
# This is helpful for looping.
- ansible.builtin.debug: msg="{{ query('community.network.avi', obj_uuid='virtualservice-5c0e183a-690a-45d8-8d6f-88c30a52550d', obj_type='virtualservice') }}"
   Return Values
Common return values are documented here, the following are the fields unique to this lookup:
| Key | Returned | Description | 
|---|---|---|
|   _raw    list / elements=dictionary    |  success |   One ore more objects returned from ``Avi`` API.   |  
Authors
- Sandeep Bandi (@sabandi) <sandeepb@avinetworks.com>
 
    © 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
    https://docs.ansible.com/ansible/2.10/collections/community/network/avi_lookup.html