Terraform sağlayıcısı
DNS'inizi kod olarak yönetin
Terraform sağlayıcımız zinn-digital/zinn, kuruluşunuzdaki alan adlarının DNS kayıtlarını yönetir ve sitelerinizi, alan adlarınızı, planlarınızı ve barındırma bölgelerinizi veri kaynakları olarak okur. Terraform Registry üzerinde yayımlanmıştır ve diğer her şey gibi aynı genel API üzerinde oluşturulmuştur.
Yükle
Sağlayıcıyı bildirin ve terraform init komutunu çalıştırın. Sürümler imzalanmıştır ve Terraform, sağlayıcıyı indirirken imzayı doğrular.
terraform {
required_providers {
zinn = {
source = "zinn-digital/zinn"
}
}
}
# api_key falls back to ZINN_API_KEY.
provider "zinn" {}Hızlı başlangıç
Ada göre bir alan adı arayın ve www'yi ona yönlendirin, ardından barındırma bölgelerini listeleyin.
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] }Kimlik Doğrulama
Sağlayıcı, kuruluş başına bir API anahtarını api_key bağımsız değişkeninden veya ZINN_API_KEY ortam değişkeninden okur. regions ve plans veri kaynakları anahtar gerektirmez. Anahtara yalnızca yapılandırmanızın ihtiyaç duyduğu izinleri verin; örneğin siteleri görüntüleme ve DNS yönetimi.
Bugün yönettikleri
Kaynak: zinn_dns_record
Alan adlarınızda DNS kayıtları oluşturun, güncelleyin, silin ve içe aktarın: A, AAAA, CNAME, MX, TXT, SRV ve bölgenizin desteklediği diğer türler.
Veri kaynakları
zinn_sites ve zinn_domains kuruluşunuzu okur. zinn_regions ve zinn_plans ise herkese açık kataloğu okur ve hiçbir anahtar gerektirmez.
Belirtimden oluşturuldu
Sağlayıcının istek ve yanıt modelleri OpenAPI şartnamemizden oluşturulur ve yeni sürümler Terraform Registry'de otomatik olarak yayınlanır.
Envanterinizi okuyun
Veri kaynakları hiçbir kaynak gerektirmez, bu nedenle zaten sahip olduklarınızı okuyarak başlayabilirsiniz.
# 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] }Sorular
Bir Terraform sağlayıcınız var mı?
Evet. Terraform Registry üzerinden source = "zinn-digital/zinn" kullanın. Şu anda DNS kayıtlarını yönetir; siteleri, alan adlarını, planları ve barındırma bölgelerini okur.
Terraform siteler veya posta kutuları oluşturabilir mi?
Henüz değil. Siteler, posta kutuları ve planlar kontrol panelinde, API, SDK'lar veya Zinnector® CLI aracılığıyla yönetilir. Sağlayıcı DNS kayıtlarını yönetir ve geri kalanını okur.
Mevcut bir DNS kaydını Terraform yönetimi altına nasıl alabilirim?
terraform import komutunu alan adı kimliği ve kayıt kimliği arasına bir eğik çizgi koyarak çalıştırın, örneğin terraform import zinn_dns_record.www <domain_id>/<record_id>.
Her uç noktayı keşfedin
Sağlayıcının henüz yönetmediği her şey, API referansında uç nokta uç nokta açıklanan API'de mevcuttur.