community.dns.hetzner_dns_record module – Add or delete a single record in Hetzner DNS service
Note
This module is part of the community.dns collection (version 3.0.3).
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.dns
.
To use it in a playbook, specify: community.dns.hetzner_dns_record
.
New in community.dns 2.0.0
Synopsis
Creates and deletes single DNS records in Hetzner DNS service.
If you do not want to add/remove values, but replace values, you will be interested in modifying a record set and not a single record. This is in particular important when working with
CNAME
andSOA
records. Use the community.dns.hetzner_dns_record_set module for working with record sets.Records are matched by prefix / record name and value.
Parameters
Parameter |
Comments |
---|---|
The token for the Hetzner API. If not provided, will be read from the environment variable |
|
Specifies the state of the resource record. Choices:
|
|
The TTL to give the new record, in seconds. This is not used for record deletion. |
|
Whether to treat numeric escape sequences ( The default changed to Choices:
|
|
Determines how TXT entry values are converted between the API and this module’s input and output. The value The value The value The default value, Note: the conversion code assumes UTF-8 encoding for values. If you need another encoding use Choices:
|
|
The type of DNS record to create or delete. Choices:
|
|
The new value when creating a DNS record. When deleting a record all values for the record must be specified or it will not be deleted. |
|
Attributes
Attribute |
Support |
Description |
---|---|---|
Action group: community.dns.hetzner added in community.dns 2.4.0 |
Use |
|
Support: full |
Can run in |
|
Support: full |
Will return details on what has changed (or possibly needs changing in |
Notes
Note
For
CNAME
records, use absolute DNS names for values. Absolute DNS names end with a trailing period.
, for examplefoo.example.com.
. If you use a relative DNS name, with no trailing period, the value will be relative to the zone of theCNAME
record.
Examples
- name: Add a new.foo.com A record
community.dns.hetzner_dns_record:
state: present
zone: foo.com
record: new.foo.com
type: A
ttl: 7200
value: 1.1.1.1
hetzner_token: access_token
- name: Remove a new.foo.com A record
community.dns.hetzner_dns_record:
state: absent
zone_name: foo.com
record: new.foo.com
type: A
ttl: 7200
value: 2.2.2.2
hetzner_token: access_token
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The ID of the zone. Returned: success Sample: |