vultr_dns_record – Manages DNS records on Vultr.
New in version 2.5.
Synopsis
- Create, update and remove DNS records.
Aliases: vr_dns_record
Requirements
The below requirements are needed on the host that executes this module.
- python >= 2.6
Parameters
| Parameter | Choices/Defaults | Comments |
|---|---|---|
| api_account - | Default: "default" | Name of the ini section in the vultr.ini file.The ENV variable VULTR_API_ACCOUNT is used as default, when defined. |
| api_endpoint - | URL to API endpint (without trailing slash). The ENV variable VULTR_API_ENDPOINT is used as default, when defined.Fallback value is https://api.vultr.com if not specified. | |
| api_key - | API key of the Vultr API. The ENV variable VULTR_API_KEY is used as default, when defined. | |
| api_retries - | Amount of retries in case of the Vultr API retuns an HTTP 503 code. The ENV variable VULTR_API_RETRIES is used as default, when defined.Fallback value is 5 retries if not specified. | |
| api_timeout - | HTTP timeout to Vultr API. The ENV variable VULTR_API_TIMEOUT is used as default, when defined.Fallback value is 60 seconds if not specified. | |
| data - | Data of the record. Required if state=present or multiple=yes. | |
| domain - / required | The domain the record is related to. | |
| multiple boolean |
| Whether to use more than one record with similar name including no name and record_type.Only allowed for a few record types, e.g. record_type=A, record_type=NS or record_type=MX.data will not be updated, instead it is used as a key to find existing records. |
| name - | Default: "" | The record name (subrecord). aliases: subrecord |
| priority - | Default: 0 | Priority of the record. |
| record_type - |
| Type of the record. aliases: type |
| state - |
| State of the DNS record. |
| ttl - | Default: 300 | TTL of the record. |
| validate_certs boolean |
| Validate SSL certs of the Vultr API. |
Notes
Note
- Also see the API documentation on https://www.vultr.com/api/.
Examples
- name: Ensure an A record exists
vultr_dns_record:
name: www
domain: example.com
data: 10.10.10.10
ttl: 3600
- name: Ensure a second A record exists for round robin LB
vultr_dns_record:
name: www
domain: example.com
data: 10.10.10.11
ttl: 60
multiple: yes
- name: Ensure a CNAME record exists
vultr_dns_record:
name: web
record_type: CNAME
domain: example.com
data: www.example.com
- name: Ensure MX record exists
vultr_dns_record:
record_type: MX
domain: example.com
data: "{{ item.data }}"
priority: "{{ item.priority }}"
multiple: yes
with_items:
- { data: mx1.example.com, priority: 10 }
- { data: mx2.example.com, priority: 10 }
- { data: mx3.example.com, priority: 20 }
- name: Ensure a record is absent
local_action:
module: vultr_dns_record
name: www
domain: example.com
state: absent
- name: Ensure MX record is absent in case multiple exists
vultr_dns_record:
record_type: MX
domain: example.com
data: mx1.example.com
multiple: yes
state: absent
Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | |
|---|---|---|---|
| vultr_api complex | success | Response from Vultr API with a few additions/modification | |
| api_account string | success | Account used in the ini file to select the key Sample: default | |
| api_timeout integer | success | Timeout used for the API requests Sample: 60 | |
| vultr_dns_record complex | success | Response from Vultr API | |
| data string | success | Data of the DNS record. Sample: 10.10.10.10 | |
| domain string | success | Domain the DNS record is related to. Sample: example.com | |
| id integer | success | The ID of the DNS record. Sample: 1265277 | |
| name string | success | The name of the DNS record. Sample: web | |
| priority integer | success | Priority of the DNS record. Sample: 10 | |
| record_type string | success | The name of the DNS record. Sample: web | |
| ttl integer | success | Time to live of the DNS record. Sample: 300 | |
Status
- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]
Authors
- René Moser (@resmo)
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/vultr_dns_record_module.html