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 2.9.7).
You might already have this collection installed if you are using the ansible
package.
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 current default is 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: |