Terraform pružatelj usluga
Upravljajte svojim DNS-om kao kodom
Naš Terraform pružatelj usluga, zinn-digital/zinn, upravlja DNS zapisima na domenama u vašoj organizaciji te čita vaše web-lokacije, domene, pakete i regije poslužitelja kao izvore podataka. Objavljen je na Terraform Registryju i izgrađen na istom javnom API-ju kao i sve ostalo.
Instaliraj
Deklarirajte pružatelja usluge i pokrenite terraform init. Izdanja su potpisana, a Terraform provjerava potpis prilikom preuzimanja pružatelja usluge.
terraform {
required_providers {
zinn = {
source = "zinn-digital/zinn"
}
}
}
# api_key falls back to ZINN_API_KEY.
provider "zinn" {}Brzi početak
Potražite domenu po nazivu i usmjerite www na nju, a zatim navedite regije hostinga.
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] }Provjera autentičnosti
Pružatelj usluga čita API ključ za svaku organizaciju iz argumenta api_key ili iz varijable okruženja ZINN_API_KEY. Izvori podataka regions i plans ne trebaju ključ. Dodijelite ključu samo one dozvole koje su potrebne vašoj konfiguraciji, na primjer pregledavanje web-mjesta i upravljanje DNS-om.
Što danas upravlja
Resurs: zinn_dns_record
Stvarajte, ažurirajte, brišite i uvozite DNS zapise na svojim domenama: A, AAAA, CNAME, MX, TXT, SRV i druge vrste koje vaša zona podržava.
Izvori podataka
zinn_sites i zinn_domains čitaju vašu organizaciju. zinn_regions i zinn_plans čitaju javni katalog i ne zahtijevaju ključ.
Generirano iz specifikacije
Modeli zahtjeva i odgovora pružatelja usluge generiraju se iz naše OpenAPI specifikacije, a nova se izdanja automatski objavljuju u Terraform Registry.
Pročitajte svoj inventar
Izvori podataka ne trebaju nikakve resurse, pa možete započeti čitanjem onoga što već imate.
# 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] }Pitanja
Imate li Terraform pružatelja usluga?
Da. Upotrijebite source = "zinn-digital/zinn" iz Terraform Registryja. Danas upravlja DNS zapisima i čita web-mjesta, domene, planove i regije hostinga.
Može li Terraform stvarati web-mjesta ili poštanske sandučiće?
Još ne. Web-mjesta, poštanski sandučići i tarife upravljaju se na upravljačkoj ploči, putem API-ja, SDK-ova ili Zinnector® CLI-ja. Pružatelj usluga upravlja DNS zapisima i čita ostatak.
Kako mogu staviti postojeći DNS zapis pod upravljanje Terraformom?
Pokrenite terraform import s ID-jem domene i ID-jem zapisa odvojenima kosom crtom, na primjer terraform import zinn_dns_record.www <domain_id>/<record_id>.
Istražite svaku krajnju točku
Sve čime pružatelj usluga još ne upravlja dostupno je u API-ju, koji je opisan krajnja točka po krajnja točka u referentnoj dokumentaciji za API.