ngine_io.vultr.vultr_dns_record – Manages DNS records on Vultr.¶
Note
This plugin is part of the ngine_io.vultr collection (version 1.1.0).
To install it use: ansible-galaxy collection install ngine_io.vultr
.
To use it in a playbook, specify: ngine_io.vultr.vultr_dns_record
.
New in version 0.1.0: of ngine_io.vultr
Requirements¶
The below requirements are needed on the host that executes this module.
python >= 2.6
Parameters¶
Parameter | Choices/Defaults | Comments |
---|---|---|
api_account
string
|
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
string
|
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
string
|
API key of the Vultr API.
The ENV variable
VULTR_API_KEY is used as default, when defined. |
|
api_retries
integer
|
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_retry_max_delay
integer
|
Retry backoff delay in seconds is exponential up to this max. value, in seconds.
The ENV variable
VULTR_API_RETRY_MAX_DELAY is used as default, when defined.Fallback value is 12 seconds.
|
|
api_timeout
integer
|
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
string
|
Data of the record.
Required if
state=present or multiple=yes . |
|
domain
string
/ 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
string
|
Default: ""
|
The record name (subrecord).
aliases: subrecord |
priority
integer
|
Default: 0
|
Priority of the record.
|
record_type
string
|
|
Type of the record.
aliases: type |
state
string
|
|
State of the DNS record.
|
ttl
integer
|
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
ngine_io.vultr.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
ngine_io.vultr.vultr_dns_record:
name: www
domain: example.com
data: 10.10.10.11
ttl: 60
multiple: yes
- name: Ensure a CNAME record exists
ngine_io.vultr.vultr_dns_record:
name: web
record_type: CNAME
domain: example.com
data: www.example.com
- name: Ensure MX record exists
ngine_io.vultr.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
ngine_io.vultr.vultr_dns_record:
name: www
domain: example.com
state: absent
- name: Ensure MX record is absent in case multiple exists
ngine_io.vultr.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:
Authors¶
René Moser (@resmo)