{% for dns_zone in taskserv.sites | map(attribute="dns_zone") | unique %} {% set site = taskserv.sites | filter(attribute="dns_zone", value=dns_zone) | first %} {% set cf_secret_name = "dns-" ~ dns_zone | replace(from=".", to="-") %} --- apiVersion: cert-manager.io/v1 kind: ClusterIssuer metadata: name: {{ site.cluster_issuer }} labels: app.kubernetes.io/managed-by: provisioning app.kubernetes.io/instance: {{ taskserv.name }} spec: acme: server: https://acme-v02.api.letsencrypt.org/directory email: {{ taskserv.acme_email }} privateKeySecretRef: name: {{ site.cluster_issuer }}-acme-key solvers: - dns01: cloudflare: apiTokenSecretRef: name: {{ cf_secret_name }} key: api-token {% endfor %}