Poskytovatel Terraform

Spravujte své DNS jako kód

Náš poskytovatel Terraform, zinn-digital/zinn, spravuje záznamy DNS na doménách ve vaší organizaci a čte vaše weby, domény, plány a hostingové regiony jako zdroje dat. Je publikován v Terraform Registry a postaven na stejném veřejném rozhraní API jako vše ostatní.

Veškerá dokumentace pro vývojáře →

Instalovat

Deklarujte poskytovatele a spusťte terraform init. Verze jsou podepsány a Terraform při stahování poskytovatele ověřuje podpis.

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

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

Rychlý start

Vyhledejte doménu podle názvu a namiřte na ni www, poté zobrazte seznam hostingových oblastí.

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] }

Ověření

Poskytovatel načítá klíč API pro každou organizaci z argumentu api_key nebo z proměnné prostředí ZINN_API_KEY. Zdroje dat regions a plans žádný klíč nevyžadují. Udělte klíči pouze ta oprávnění, která vaše konfigurace potřebuje, například prohlížení webů a správu DNS.

Vytvořte si klíč API na svém ovládacím panelu

Co dnes spravuje

Prostředek: zinn_dns_record

Vytvářejte, upravujte, mažte a importujte DNS záznamy na svých doménách: A, AAAA, CNAME, MX, TXT, SRV a další typy, které vaše zóna podporuje.

Zdroje dat

zinn_sites a zinn_domains načítají vaši organizaci. zinn_regions a zinn_plans načítají veřejný katalog a nevyžadují žádný klíč.

Vygenerováno ze specifikace

Modely požadavků a odpovědí poskytovatele se generují z naší specifikace OpenAPI a nová vydání jsou automaticky publikována v Terraform Registry.

Přečíst inventář

Zdroje dat nepotřebují vůbec žádné prostředky, takže můžete začít čtením toho, co již máte.

# 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] }

Otázky

Máte poskytovatele Terraform?

Ano. Použijte source = "zinn-digital/zinn" z Terraform Registry. V současné době spravuje DNS záznamy a čte weby, domény, plány a hostingové regiony.

Může Terraform vytvářet weby nebo poštovní schránky?

Zatím ne. Weby, poštovní schránky a plány se spravují na řídicím panelu, prostřednictvím rozhraní API, sad SDK nebo Zinnector® CLI. Poskytovatel spravuje záznamy DNS a zbytek čte.

Jak mohu převést existující záznam DNS pod správu Terraformu?

Spusťte terraform import s ID domény a ID záznamu oddělenými lomítkem, například terraform import zinn_dns_record.www <domain_id>/<record_id>.

Prozkoumejte každý koncový bod

Vše, co poskytovatel dosud nespravuje, je k dispozici v API, které je popsáno koncový bod po koncovém bodu v referenční příručce k API.

Reference k rozhraní API