zinn-digital/zinn ialah pembekal Terraform rasmi kami, diterbitkan di Terraform Registry dengan keluaran yang ditandatangani. Ia menguruskan rekod DNS pada domain dalam organisasi anda, dan membaca tapak, domain, pelan dan rantau pengehosan anda sebagai sumber data. Tapak, peti mel dan pelan itu sendiri tidak diuruskan oleh Terraform pada masa ini — gunakan papan pemuka, API, SDK atau CLI Zinnector® untuk perkara tersebut.
Pasang
terraform {
required_providers {
zinn = {
source = "zinn-digital/zinn"
}
}
}
# api_key falls back to ZINN_API_KEY.
provider "zinn" {}
Jalankan terraform init. Terraform memuat turun penyedia daripada pendaftaran dan menyemak tandatangan penyedia tersebut.
Cipta kunci API
Buka halaman Kunci API pada papan pemuka anda (app.zinndigital.com/api-keys) dan tekan Cipta kunci. Untuk mengurus DNS, tandakan sites.view dan domains.dns.manage di bawah Kebenaran. Eksport kunci tersebut sebelum menjalankan Terraform:
export ZINN_API_KEY=zdk_live_…
Sumber data zinn_regions dan zinn_plans tidak memerlukan sebarang kunci.
Urus rekod 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 mencipta rekod tersebut; mengubah value atau ttl mengemas kininya secara setempat; mengalih keluar blok memadamkannya. name menerima @ untuk apex, nama relatif seperti www, atau nama penuh.
Bawa rekod sedia ada ke bawah Terraform
terraform import zinn_dns_record.www <domain_id>/<record_id>
Id domain diperoleh daripada data.zinn_domains; id rekod ditunjukkan oleh senarai rekod DNS API.
Baca inventori anda
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] }
Tetapan penyedia
api_key — kunci API; lalai kepada ZINN_API_KEY.
api_url — lalai kepada ZINN_API_URL, kemudian https://api.zinndigital.com.
org — organisasi untuk bertindak; lalai kepada ZINN_ORG. Biasanya tidak diperlukan, kerana kunci kepunyaan satu organisasi.
Ke mana seterusnya
- Panduan di laman web kami: zinndigital.com/developers/terraform
- Penyedia di Terraform Registry: registry.terraform.io/providers/zinn-digital/zinn
- Kod sumber: github.com/Zinn-Digital/terraform-provider-zinn