Furnizor Terraform

Gestionați-vă DNS-ul ca pe un cod

Furnizorul nostru Terraform, zinn-digital/zinn, gestionează înregistrările DNS pentru domeniile din organizația dumneavoastră și citește site-urile, domeniile, planurile și regiunile dumneavoastră de găzduire ca surse de date. Este publicat în Terraform Registry și este construit pe aceeași API publică ca toate celelalte componente.

Toată documentația pentru dezvoltatori →

Instalează

Declarați furnizorul și rulați terraform init. Versiunile sunt semnate, iar Terraform verifică semnătura atunci când descarcă furnizorul.

terraform {
  required_providers {
    zinn = {
      source = "zinn-digital/zinn"
    }
  }
}

# api_key falls back to ZINN_API_KEY.
provider "zinn" {}

Pornire rapidă

Căutați un domeniu după nume și direcționați www către acesta, apoi listați regiunile de găzduire.

data "zinn_regions" "all" {}
data "zinn_domains" "all" {}

resource "zinn_dns_record" "www" {
  domain_id = one([for d in data.zinn_domains.all.domains : d.id if d.fqdn == "example.com"])
  name      = "www"
  type      = "CNAME"
  value     = "example.com."
  ttl       = 3600
}

output "regions" { value = [for r in data.zinn_regions.all.regions : r.slug] }

Autentificare

Furnizorul citește o cheie API per organizație din argumentul api_key sau din variabila de mediu ZINN_API_KEY. Sursele de date regions și plans nu necesită nicio cheie. Acordați cheii doar permisiunile de care are nevoie configurația dumneavoastră, de exemplu vizualizarea site-urilor și gestionarea DNS.

Creați o cheie API în panoul de control

Ce gestionează astăzi

Resursă: zinn_dns_record

Creați, actualizați, ștergeți și importați înregistrări DNS pe domeniile dumneavoastră: A, AAAA, CNAME, MX, TXT, SRV și celelalte tipuri acceptate de zona dumneavoastră.

Surse de date

zinn_sites și zinn_domains citesc organizația dumneavoastră. zinn_regions și zinn_plans citesc catalogul public și nu necesită nicio cheie.

Generat din specificație

Modelele de solicitare și răspuns ale furnizorului sunt generate din specificația noastră OpenAPI, iar noile versiuni sunt publicate automat în Terraform Registry.

Citiți inventarul dvs.

Sursele de date nu au nevoie de resurse deloc, așa că puteți începe prin a citi ceea ce aveți deja.

# A read-only inventory of your organisation and the catalogue.
data "zinn_sites" "all" {}
data "zinn_plans" "agency" { product_line = "agency" }

output "site_count" { value = length(data.zinn_sites.all.sites) }
output "agency_plans" { value = [for p in data.zinn_plans.agency.plans : p.code] }

Întrebări

Aveți un furnizor Terraform?

Da. Utilizați source = "zinn-digital/zinn" din Terraform Registry. În prezent, acesta gestionează înregistrările DNS și citește site-uri, domenii, planuri și regiuni de găzduire.

Poate Terraform să creeze site-uri sau căsuțe poștale?

Încă nu. Site-urile, căsuțele poștale și planurile sunt gestionate în tabloul de bord, prin API, SDK-uri sau Zinnector® CLI. Furnizorul gestionează înregistrările DNS și citește restul.

Cum pot trece o înregistrare DNS existentă sub administrarea Terraform?

Rulați terraform import cu ID-ul domeniului și ID-ul înregistrării separate printr-o bară oblică, de exemplu terraform import zinn_dns_record.www <domain_id>/<record_id>.

Explorați fiecare punct final

Tot ceea ce furnizorul nu gestionează încă este disponibil în API, care este descris punct final cu punct final în documentația de referință a API-ului.

Referință API