exo_dns_record - Manages DNS records on Exoscale DNS.
New in version 2.2.
Synopsis
- Create, update and delete 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. | |
content | no | Content of the record. Required if state=present or name=""
aliases: value, address | ||
domain | yes | Domain the record is related to. | ||
multiple | no | Whether there are more than one records with similar name .Only allowed with record_type=A .content will not be updated as it is used as key to find the record.aliases: priority | ||
name | no | Name of the record. | ||
prio | no | Priority of the record. aliases: priority | ||
record_type | no | A |
| Type of the record. aliases: rtype, type |
state | no | present |
| State of the record. |
ttl | no | 3600 | TTL of the record in seconds. | |
validate_certs | no | True |
| Validate SSL certs of the Exoscale DNS API. |
Examples
- name: Create or update an A record local_action: module: exo_dns_record name: web-vm-1 domain: example.com content: 1.2.3.4 - name: Update an existing A record with a new IP local_action: module: exo_dns_record name: web-vm-1 domain: example.com content: 1.2.3.5 - name: Create another A record with same name local_action: module: exo_dns_record name: web-vm-1 domain: example.com content: 1.2.3.6 multiple: yes - name: Create or update a CNAME record local_action: module: exo_dns_record name: www domain: example.com record_type: CNAME content: web-vm-1 - name: Create or update a MX record local_action: module: exo_dns_record domain: example.com record_type: MX content: mx1.example.com prio: 10 - name: Delete a MX record local_action: module: exo_dns_record domain: example.com record_type: MX content: mx1.example.com state: absent - name: Remove a record local_action: module: exo_dns_record name: www domain: 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_record | API record results | success | complex | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
contains: |
|
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. ACLOUDSTACK_CONFIG
environment variable pointing to an.ini
file, Acloudstack.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 incloudstack.ini
. Use the argumentapi_region
to select the section name, default section iscloudstack
. - 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_record_module.html