--- - name: Ensure DNS zone exists hetzner.hcloud.zone: name: "{{ item.zone }}" mode: primary api_token: "{{ hcloud_token }}" state: present loop: "{{ dns_zones }}" loop_control: label: "{{ item.zone }}" tags: dns - name: Manage DNS records hetzner.hcloud.zone_rrset: zone: "{{ item.0.zone }}" name: "{{ item.1.name }}" type: "{{ item.1.type }}" ttl: "{{ item.1.ttl | default(300) }}" records: "{{ item.1.records }}" api_token: "{{ hcloud_token }}" state: present loop: "{{ dns_zones | subelements('records') }}" loop_control: label: "{{ item.0.zone }} {{ item.1.name }} {{ item.1.type }}" tags: dns