ספק Terraform

נהלו את ה-DNS שלכם כקוד

ספק ה-Terraform שלנו, zinn-digital/zinn, מנהל רשומות DNS בדומיינים בארגון שלכם וקורא את האתרים, הדומיינים, התוכניות ואזורי האחסון שלכם כמקורות נתונים. הוא מפורסם ב-Terraform Registry ובנוי על אותו API ציבורי כמו כל השאר.

כל תיעוד המפתחים →

התקן

הצהירו על הספק והפעילו את terraform init. הגרסאות חתומות, ו-Terraform מאמתת את החתימה בעת הורדת הספק.

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

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

התחלה מהירה

חפשו דומיין לפי שם וכוונו אליו את www, ולאחר מכן הציגו את אזורי האחסון.

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

אימות

הספק קורא מפתח API ייעודי לכל ארגון מתוך הארגומנט api_key או מתוך משתנה הסביבה ZINN_API_KEY. מקורות הנתונים regions ו-plans אינם זקוקים למפתח. העניקו למפתח רק את ההרשאות שהתצורה שלכם דורשת, למשל הצגת אתרים וניהול DNS.

צרו מפתח API בלוח הבקרה שלכם

מה שהוא מנהל היום

משאב: zinn_dns_record

צרו, עדכנו, מחקו וייבאו רשומות DNS בדומיינים שלכם: A, AAAA, CNAME, MX, TXT, SRV וסוגים נוספים שהאזור שלכם תומך בהם.

מקורות נתונים

המשאבים zinn_sites ו-zinn_domains קוראים את הארגון שלכם. המשאבים zinn_regions ו-zinn_plans קוראים את הקטלוג הציבורי ואינם זקוקים למפתח.

נוצר מתוך המפרט

מודלי הבקשה והתגובה של הספק מופקים ממפרט ה-OpenAPI שלנו, ומהדורות חדשות מפורסמות באופן אוטומטי ב-Terraform Registry.

קריאת המלאי שלך

מקורות נתונים אינם דורשים משאבים כלל, כך שתוכל להתחיל בקריאת מה שכבר יש לך.

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

שאלות

האם יש לכם ספק Terraform?

כן. השתמש ב-source = "zinn-digital/zinn" מתוך Terraform Registry. כיום הוא מנהל רשומות DNS וקורא אתרים, דומיינים, תוכניות ואזורי אירוח.

האם Terraform יכול ליצור אתרים או תיבות דואר?

עדיין לא. אתרים, תיבות דואר ותוכניות מנוהלים בלוח הבקרה, באמצעות ה-API, ערכות ה-SDK או ה-⁦Zinnector® CLI⁩. הספק מנהל את רשומות ה-DNS וקורא את השאר.

כיצד אוכל להעביר רשומת DNS קיימת לניהול תחת Terraform?

הפעל את terraform import עם מזהה הדומיין ומזהה הרשומה מופרדים בלוכסן, לדוגמה terraform import zinn_dns_record.www <domain_id>/<record_id>.

גלו כל נקודת קצה

כל מה שהספק אינו מנהל עדיין זמין ב-API, המתואר נקודת קצה אחר נקודת קצה במדריך ה-API.

מדריך API