On this page
community.network.avi_ipamdnsproviderprofile – Module for setup of IpamDnsProviderProfile Avi RESTful Object
Note
This plugin is part of the community.network collection (version 3.0.0).
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.network.
To use it in a playbook, specify: community.network.avi_ipamdnsproviderprofile.
Synopsis
- This module is used to configure IpamDnsProviderProfile object
 - more examples at https://github.com/avinetworks/devops
 
Requirements
The below requirements are needed on the host that executes this module.
- avisdk
 
Parameters
| Parameter | Choices/Defaults | Comments | |
|---|---|---|---|
| allocate_ip_in_vrf
        
        boolean
         | 
      
       
  | 
      
        
        If this flag is set, only allocate ip from networks in the virtual service vrf.
        
       
        Applicable for avi vantage ipam only.
        
       
        Field introduced in 17.2.4.
        
       
        Default value when not specified in API or module is interpreted by Avi Controller as False.
         | 
     |
| 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_api_patch_op
        
        string
         | 
      
       
  | 
      
        
        Patch operation to use when using avi_api_update_method as patch.
         | 
     |
| avi_api_update_method
        
        string
         | 
      
       
  | 
      
        
        Default method for object update is HTTP PUT.
        
       
        Setting to patch will override that behavior to use HTTP PATCH.
         | 
     |
| 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.
         | 
     |
| aws_profile
        
        string
         | 
      
        
        Provider details if type is aws.
         | 
     ||
| azure_profile
        
        string
         | 
      
        
        Provider details if type is microsoft azure.
        
       
        Field introduced in 17.2.1.
         | 
     ||
| controller
        
        string
         | 
      Default: 
        ""
         | 
      
        
        IP address or hostname of the controller. The default value is the environment variable  AVI_CONTROLLER.
        | 
     |
| custom_profile
        
        string
         | 
      
        
        Provider details if type is custom.
        
       
        Field introduced in 17.1.1.
         | 
     ||
| gcp_profile
        
        string
         | 
      
        
        Provider details if type is google cloud.
         | 
     ||
| infoblox_profile
        
        string
         | 
      
        
        Provider details if type is infoblox.
         | 
     ||
| internal_profile
        
        string
         | 
      
        
        Provider details if type is avi.
         | 
     ||
| name
        
        string / required
         | 
      
        
        Name for the ipam/dns provider profile.
         | 
     ||
| oci_profile
        
        string
         | 
      
        
        Provider details for oracle cloud.
        
       
        Field introduced in 18.2.1,18.1.3.
         | 
     ||
| openstack_profile
        
        string
         | 
      
        
        Provider details if type is openstack.
         | 
     ||
| password
        
        string
         | 
      Default: 
        ""
         | 
      
        
        Password of Avi user in Avi controller. The default value is the environment variable  AVI_PASSWORD.
        | 
     |
| proxy_configuration
        
        string
         | 
      
        
        Field introduced in 17.1.1.
         | 
     ||
| state
        
        string
         | 
      
       
  | 
      
        
        The state that should be applied on the entity.
         | 
     |
| tenant
        
        string
         | 
      Default: 
        "admin"
         | 
      
        
        Name of tenant used for all Avi API calls and context of object.
         | 
     |
| tenant_ref
        
        string
         | 
      
        
        It is a reference to an object of type tenant.
         | 
     ||
| tenant_uuid
        
        string
         | 
      Default: 
        ""
         | 
      
        
        UUID of tenant used for all Avi API calls and context of object.
         | 
     |
| tencent_profile
        
        string
         | 
      
        
        Provider details for tencent cloud.
        
       
        Field introduced in 18.2.3.
         | 
     ||
| type
        
        string / required
         | 
      
        
        Provider type for the ipam/dns provider profile.
        
       
        Enum options - IPAMDNS_TYPE_INFOBLOX, IPAMDNS_TYPE_AWS, IPAMDNS_TYPE_OPENSTACK, IPAMDNS_TYPE_GCP, IPAMDNS_TYPE_INFOBLOX_DNS, IPAMDNS_TYPE_CUSTOM,
        
       
        IPAMDNS_TYPE_CUSTOM_DNS, IPAMDNS_TYPE_AZURE, IPAMDNS_TYPE_OCI, IPAMDNS_TYPE_TENCENT, IPAMDNS_TYPE_INTERNAL, IPAMDNS_TYPE_INTERNAL_DNS,
        
       
        IPAMDNS_TYPE_AWS_DNS, IPAMDNS_TYPE_AZURE_DNS.
         | 
     ||
| url
        
        string
         | 
      
        
        Avi controller URL of the object.
         | 
     ||
| username
        
        string
         | 
      Default: 
        ""
         | 
      
        
        Username used for accessing Avi controller. The default value is the environment variable  AVI_USERNAME.
        | 
     |
| uuid
        
        string
         | 
      
        
        Uuid of the ipam/dns provider profile.
         | 
     ||
Notes
Note
- For more information on using Ansible to manage Avi Network devices see https://www.ansible.com/ansible-avi-networks.
 
Examples
- name: Create IPAM DNS provider setting
  community.network.avi_ipamdnsproviderprofile:
    controller: '{{ controller }}'
    username: '{{ username }}'
    password: '{{ password }}'
    internal_profile:
      dns_service_domain:
      - domain_name: ashish.local
        num_dns_ip: 1
        pass_through: true
        record_ttl: 100
      - domain_name: guru.local
        num_dns_ip: 1
        pass_through: true
        record_ttl: 200
      ttl: 300
    name: Ashish-DNS
    tenant_ref: Demo
    type: IPAMDNS_TYPE_INTERNAL
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| obj
        
        dictionary
         | 
      success, changed | 
        
        IpamDnsProviderProfile (api/ipamdnsproviderprofile) object
          | 
     
Authors
- Gaurav Rastogi (@grastogi23) <grastogi@avinetworks.com>
 
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/latest/collections/community/network/avi_ipamdnsproviderprofile_module.html