community.dns.hosttech_dns_record_sets module – Bulk synchronize DNS record sets in Hosttech DNS service
Note
This module is part of the community.dns collection (version 3.3.4).
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.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: community.dns.hosttech_dns_record_sets.
New in community.dns 2.0.0
Synopsis
- Bulk synchronize DNS record sets in Hosttech DNS service. 
- It is possible to ignore certain record sets by specifying - record_sets[].ignore=truefor that record set.
- The module allows to set, modify and delete multiple DNS record sets at once. 
- This module replaces - hosttech_dns_recordsfrom community.dns before 2.0.0.
- With the - pruneoption, it is also possible to delete existing record sets that are not mentioned in the module parameters. With this, it is possible to synchronize the expected state of a DNS zone with the expected state.
Requirements
The below requirements are needed on the host that executes this module.
- lxml 
Parameters
| Parameter | Comments | 
|---|---|
| The password for the Hosttech API user. If provided,  Mutually exclusive with  | |
| The password for the Hosttech API user. Mutually exclusive with  Since community.dns 1.2.0, the alias  | |
| The username for the Hosttech API user. If provided,  Mutually exclusive with  | |
| If set to  Choices: 
 | |
| The records that should be present in the zone. | |
| If set to  This is useful when  Choices: 
 | |
| The prefix of the DNS record. This is the part of  Exactly one of  | |
| The full DNS record to create or delete. Exactly one of  | |
| The TTL to give the new record, in seconds. Default:  | |
| The type of DNS record to create or delete. Choices: 
 | |
| The new value when creating a DNS record. YAML lists or multiple comma-spaced values are allowed. When deleting a record all values for the record must be specified or it will not be deleted. Must be specified if  | |
| 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: 
 | |
Attributes
| Attribute | Support | Description | 
|---|---|---|
| Action group: community.dns.hosttech 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  | |
| Support: full | When run twice in a row outside check mode, with the same arguments, the second invocation indicates no change. This assumes that the system controlled/queried by the module has not changed in a relevant way. | 
See Also
See also
- Supported DNS records
- More information on supported DNS record types. 
Examples
- name: Make sure some records exist and have the expected values
  community.dns.hosttech_dns_record_sets:
    zone_name: foo.com
    records:
      - prefix: new
        type: A
        ttl: 7200
        value:
          - 1.1.1.1
          - 2.2.2.2
      - prefix: new
        type: AAAA
        ttl: 7200
        value:
          - "::1"
      - record: foo.com
        type: TXT
        value:
          - test
    hosttech_token: access_token
- name: Synchronize DNS zone with a fixed set of records
  # If a record exists that is not mentioned here, it will be deleted
  community.dns.hosttech_dns_record_sets:
    zone_id: 23
    purge: true
    records:
      - prefix: ''
        type: A
        value: 127.0.0.1
      - prefix: ''
        type: AAAA
        value: "::1"
      - prefix: ''
        type: NS
        value:
          - ns-1.hoster.com
          - ns-2.hoster.com
          - ns-3.hoster.com
    hosttech_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:  | 
