hetzner.hcloud.zone_info module – Gather infos about your Hetzner Cloud Zones.

Note

This module is part of the hetzner.hcloud collection (version 5.4.0).

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 hetzner.hcloud. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: hetzner.hcloud.zone_info.

Synopsis

Aliases: hcloud_zone_info

Requirements

The below requirements are needed on the host that executes this module.

  • python-dateutil >= 2.7.5

  • requests >=2.20

Parameters

Parameter

Comments

api_endpoint

aliases: endpoint

string

The API Endpoint for the Hetzner Cloud.

You can also set this option by using the HCLOUD_ENDPOINT environment variable.

Default: "https://api.hetzner.cloud/v1"

api_token

string / required

The API Token for the Hetzner Cloud.

You can also set this option by using the HCLOUD_TOKEN environment variable.

id

integer

ID of the Zone you want to get.

The module will fail if the provided ID is invalid.

label_selector

string

Label selector to filter the Zones you want to get.

name

string

Name of the Zone you want to get.

See Also

See also

Documentation for Hetzner Cloud API

Complete reference for the Hetzner Cloud API.

Examples

- name: Gather Zone infos
  hetzner.hcloud.zone_info:
  register: output
- name: Print the gathered infos
  debug:
    var: output.hcloud_zone_info

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key

Description

hcloud_zone_info

list / elements=dictionary

Zone infos as list.

Returned: always

authoritative_nameservers

dictionary

Authoritative nameservers of the Zone.

Returned: always

assigned

list / elements=string

Authoritative Hetzner nameservers assigned to the Zone.

Returned: always

Sample: ["hydrogen.ns.hetzner.com.", "oxygen.ns.hetzner.com.", "helium.ns.hetzner.de."]

delegated

list / elements=string

Authoritative nameservers delegated to the parent DNS zone.

Returned: always

Sample: ["hydrogen.ns.hetzner.com.", "oxygen.ns.hetzner.com.", "helium.ns.hetzner.de."]

delegation_last_check

string

Point in time when the DNS zone delegation was last checked (in ISO-8601 format).

Returned: always

Sample: "2023-11-06T13:36:56+00:00"

delegation_status

string

Status of the delegation.

Returned: always

Sample: "valid"

delete_protection

boolean

Protect the Zone from deletion.

Returned: always

Sample: false

id

integer

ID of the Zone.

Returned: always

Sample: 12345

labels

dictionary

User-defined labels (key-value pairs)

Returned: always

Sample: {"key": "value"}

mode

string

Mode of the Zone.

Returned: always

Sample: "primary"

name

string

Name of the Zone.

Returned: always

Sample: "example.com"

primary_nameservers

list / elements=dictionary

Primary nameservers of the Zone.

Returned: always

address

string

Public IPv4 or IPv6 address of the primary nameserver.

Returned: always

Sample: "203.0.113.1"

port

integer

Port of the primary nameserver.

Returned: always

Sample: 53

tsig_algorithm

string

Transaction signature (TSIG) algorithm used to generate the TSIG key.

Returned: always

Sample: "hmac-sha256"

tsig_key

string

Transaction signature (TSIG) key.

Returned: always

record_count

integer

Number of Resource Records (RR) within the Zone.

Returned: always

Sample: 4

registrar

string

Registrar of the Zone.

Returned: always

Sample: "hetzner"

status

string

Status of the Zone.

Returned: always

Sample: "ok"

ttl

integer

TTL of the Zone.

Returned: always

Sample: 10800

Authors

  • Jonas Lammler (@jooola)