Olupese Terraform

Ṣakoso DNS rẹ gẹgẹbi koodu

Olùpèsè Terraform wa, zinn-digital/zinn, ń ṣàkóso àwọn àkọsílẹ̀ DNS lórí àwọn orúkọ ààyè nínú àjọ rẹ ó sì ń ka àwọn ojú-òpó wẹ́ẹ̀bù, àwọn orúkọ ààyè, àwọn ètò àti àwọn agbègbè ìgbàlejò rẹ gẹ́gẹ́ bí orísun àwọn dátà. A tẹ̀ ẹ́ jáde lórí Terraform Registry a sì kọ́ ọ lórí API gbogbogbò kan náà pẹ̀lú gbogbo nǹkan mìíràn.

Gbogbo awọn iwe aṣẹ olùgbéejáde →

Fi sori ẹrọ

Kede olupese naa ki o si ṣiṣẹ terraform init. A ti fọwọsi awọn idasilẹ, ati pe Terraform n ṣe idaniloju ifọwọsi nigbati o ba n ṣe igbasilẹ olupese naa.

terraform {
  required_providers {
    zinn = {
      source = "zinn-digital/zinn"
    }
  }
}

# api_key falls back to ZINN_API_KEY.
provider "zinn" {}

Ibẹrẹ kiakia

Wa aaye ayelujara kan nipa orukọ ki o si tọka www si i, lẹhinna ṣe atokọ awọn agbegbe igbalejo.

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] }

Ìfọwọ́sí

Olupese naa n ka kọkọrọ API ti ajo kọọkan lati inu ariyanjiyan api_key tabi lati inu oniyipada ayika ZINN_API_KEY. Awọn orisun data regions ati plans ko nilo kọkọrọ kankan. Fun kọkọrọ naa ni awọn igbanilaaye ti iṣeto rẹ nilo nikan, fun apẹẹrẹ wiwo awọn aaye ayelujara ati iṣakoso DNS.

Ṣẹda kọkọrọ API kan ninu dasibodu rẹ

Ohun ti o n ṣakoso loni

Orisun: zinn_dns_record

Ṣẹda, ṣe imudojuiwọn, paarẹ ati gbe wọle awọn igbasilẹ DNS lori awọn agbegbe rẹ: A, AAAA, CNAME, MX, TXT, SRV ati awọn iru miiran ti agbegbe rẹ ṣe atilẹyin.

Àwọn orísun dátà

zinn_sites àti zinn_domains máa ń ka ètò àjọ yín. zinn_regions àti zinn_plans máa ń ka àkójọ ìwé gbogbogbòò wọn kò sì nílò kókó kankan.

Ti ipilẹṣẹ lati sipesifikesonu

Àwọn àpẹẹrẹ ìbéèrè àti ìdáhùn ti olùpèsè náà ni a ṣẹ̀dá láti inú àlàyé OpenAPI wa, àti pé àwọn àtẹ̀jáde tuntun ni a máa ń tẹ̀jáde sí Terraform Registry láìfọwọ́rọ́.

Ka akojọ-ọja rẹ

Àwọn orísun data kò nílò àwọn ohun-èldò kankan rárá, nítorí náà ẹ lè bẹ̀rẹ̀ nípa kíkà ohun tí ẹ ti ní tẹ́lẹ̀.

# 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] }

Àwọn ìbéèrè

Ṣe o ni olipese Terraform kan?

Bẹ́ẹ̀ ni. Lo source = "zinn-digital/zinn" láti Terraform Registry. Lónìí, ó ń ṣàkóso àwọn àkọsílẹ̀ DNS tí ó sì ń ka àwọn ojúlé wẹ́ẹ̀bù, àwọn orúkọ àgbègbè, àwọn ètò àti àwọn agbègbè ìgbàlejò.

Ṣe Terraform le ṣẹda awọn aaye tabi awọn apoti ifiweranṣẹ?

Kò tíì sí bẹ́ẹ̀. A ń ṣàkóso àwọn ojúlé wẹ́ẹ̀bù, àwọn àpótí ìfìwéranṣẹ́ àti àwọn ètò nínú pátákó ìdarí, nípasẹ̀ API, àwọn SDK tàbí Zinnector® CLI. Olùpèsè náà ń ṣàkóso àwọn àkọsílẹ̀ DNS tí ó sì ń ka àwọn tókù.

Bawo ni mo ṣe le mu akọsilẹ DNS to wa tẹlẹ wa labẹ iṣakoso Terraform?

Ṣiṣẹ́ terraform import pẹlu domain id ati record id ti a yà sọ́tọ̀ pẹlu slash, fun apẹẹrẹ terraform import zinn_dns_record.www <domain_id>/<record_id>.

Ṣawari gbogbo ibi-opin

Ohunkohun ti olupese ko tii ṣakoso wa ninu API, eyiti a ṣe apejuwe rẹ ni aaye ipari nipasẹ aaye ipari ninu itọkasi API.

Itọkasi API