exo_dns_domain - Manages domain records on Exoscale DNS API.

New in version 2.2.

Synopsis

  • Create and remove domain records.

Requirements (on host that executes module)

  • python >= 2.6

Options

parameter required default choices comments
api_key
no
API key of the Exoscale DNS API.
Since 2.4, the ENV variable CLOUDSTACK_KEY is used as default, when defined.
api_region
no cloudstack
Name of the ini section in the cloustack.ini file.
Since 2.4, the ENV variable CLOUDSTACK_REGION is used as default, when defined.
api_secret
no
Secret key of the Exoscale DNS API.
Since 2.4, the ENV variable CLOUDSTACK_SECRET is used as default, when defined.
api_timeout
no 10
HTTP timeout to Exoscale DNS API.
Since 2.4, the ENV variable CLOUDSTACK_TIMEOUT is used as default, when defined.
name
yes
Name of the record.
state
no present
  • present
  • absent
State of the resource.
validate_certs
no True
  • yes
  • no
Validate SSL certs of the Exoscale DNS API.

Examples

- name: Create a domain
  local_action:
    module: exo_dns_domain
    name: example.com

- name: Remove a domain
  local_action:
    module: exo_dns_domain
    name: example.com
    state: absent

Return Values

Common return values are documented here Return Values, the following are the fields unique to this module:

name description returned type sample
exo_dns_domain
API domain results
success complex
contains:
name description returned type sample
record_count
Number of records related to this domain
success int 5
account_id
Your account ID
success int 34569
updated_at
When the domain was updated last.
success string 2016-08-12T15:24:23.989Z
service_count
Number of services
success int 0
whois_protected
Whether the whois is protected or not
success bool False
lockable
Whether the domain is lockable or not
success bool True
registrant_id
ID of the registrant
success int None
id
ID of the domain
success int 2016-08-12T15:24:23.989Z
auto_renew
Whether domain is auto renewed or not
success bool False
user_id
ID of the user
success int None
name
Domain name
success string example.com
created_at
When the domain was created
success string 2016-08-12T15:24:23.989Z
state
State of the domain
success string hosted
token
Token
success string r4NzTRp6opIeFKfaFYvOd6MlhGyD07jl
unicode_name
Domain name as unicode
success string example.com
expires_on
When the domain expires
success string 2016-08-12T15:24:23.989Z

Notes

Note

  • As Exoscale DNS uses the same API key and secret for all services, we reuse the config used for Exscale Compute based on CloudStack. The config is read from several locations, in the following order. The CLOUDSTACK_KEY, CLOUDSTACK_SECRET environment variables. A CLOUDSTACK_CONFIG environment variable pointing to an .ini file, A cloudstack.ini file in the current working directory. A .cloudstack.ini file in the users home directory. Optionally multiple credentials and endpoints can be specified using ini sections in cloudstack.ini. Use the argument api_region to select the section name, default section is cloudstack.
  • This module does not support multiple A records and will complain properly if you try.
  • More information Exoscale DNS can be found on https://community.exoscale.ch/documentation/dns/.
  • This module supports check mode and diff.

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/exo_dns_domain_module.html