zinn-digital/zinn провайдери расмии Terraform-и мо мебошад, ки дар Terraform Registry бо нашрҳои имзошуда интишор шудааст. Он сабтҳои DNS-ро дар доменҳои созмони шумо идора мекунад ва сомонаҳо, доменҳо, нақшаҳо ва минтақаҳои мизбонӣ-и шуморо ҳамчун манбаъҳои додаҳо мехонад. Ҳоло сомонаҳо, қуттиҳои почта ва нақшаҳо тавассути Terraform идора карда намешаванд — барои онҳо панели идоракунӣ, API, SDK-ҳо ё Zinnector® CLI-ро истифода баред.
Насб
terraform {
required_providers {
zinn = {
source = "zinn-digital/zinn"
}
}
}
# api_key falls back to ZINN_API_KEY.
provider "zinn" {}
terraform init-ро иҷро кунед. Terraform таъминкунандаро аз феҳрист боргирӣ намуда, имзои онро месанҷад.
Калиди API эҷод кунед
Саҳифаи Калидҳои API-ро дар панели идораи худ боз кунед (app.zinndigital.com/api-keys) ва Эҷоди калид-ро пахш намоед. Барои идоракунии DNS, дар бахши Иҷозатҳо катаки sites.view ва domains.dns.manage-ро қайд кунед. Қабл аз иҷрои Terraform онро содир намоед:
export ZINN_API_KEY=zdk_live_…
Манбаъҳои додаҳои zinn_regions ва zinn_plans ба калид ниёз надоранд.
Идоракунии сабти DNS
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] }
terraform apply сабтро эҷод мекунад; тағйир додани value ё ttl онро дар ҷояш навсозӣ мекунад; нест кардани блок онро пок месозад. name аломати @-ро барои реша, номи нисбӣ ба монанди www, ё номи пурраро қабул мекунад.
Ворид кардани сабти мавҷуда зери идораи Terraform
terraform import zinn_dns_record.www <domain_id>/<record_id>
Мушаххасаи домен аз data.zinn_domains гирифта мешавад; мушаххасаи сабт тавассути рӯйхати сабтҳои DNS-и API нишон дода мешавад.
Инвентаризатсияи худро хонед
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] }
Танзимоти таъминкунанда
api_key — калиди API; ба таври пешфарз ZINN_API_KEY.
api_url — ба таври пешфарз ZINN_API_URL, сипас https://api.zinndigital.com.
org — созмоне, ки бояд мавриди амал қарор гирад; ба таври пешфарз ZINN_ORG. Одатан нолозим аст, зеро як калид ба як созмон тааллуқ дорад.
Баъд аз ин ба куҷо муроҷиат бояд кард
- Роҳнамо дар сомонаи мо: zinndigital.com/developers/terraform
- Таъминкунанда дар Terraform Registry: registry.terraform.io/providers/zinn-digital/zinn
- Рамзи ибтидоӣ: github.com/Zinn-Digital/terraform-provider-zinn