zinn-digital/zinn என்பது எங்களின் அதிகாரப்பூர்வ Terraform வழங்குநராகும் (provider), இது கையொப்பமிடப்பட்ட வெளியீடுகளுடன் 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-ஐ மாற்றுவது அதே இடத்தில் அதைப் புதுப்பிக்கிறது; தொகுதியை நீக்குவது அதை அழிக்கிறது. உச்சத்திற்கு @, www போன்ற தொடர்புடைய பெயர் அல்லது முழுப் பெயரை name ஏற்கிறது.
ஏற்கனவே உள்ள பதிவை Terraform-இன் கீழ் கொண்டு வாருங்கள்
terraform import zinn_dns_record.www <domain_id>/<record_id>
டொமைன் ஐடி data.zinn_domains இலிருந்து பெறப்படுகிறது; பதிவு ஐடி API-இன் DNS பதிவுப் பட்டியலில் காட்டப்படுகிறது.
உங்கள் இருப்பைப் படியுங்கள்
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