ייבוא רכיבים

Application Design Center תומך בכמה Google Cloud מוצרים שאפשר להוסיף כרכיבים לאפליקציה. כדי להשתמש בגרסה משלכם של הרכיבים האלה או להוסיף רכיבים אחרים, צריך לייבא את מודולי Terraform אל App Design Center.

מודולים של Terraform הם הגדרות לשימוש חוזר למוצרי Google Cloud . ייבוא מודולים של Terraform עוזר לכם:

  • להאיץ את פיתוח האפליקציות ולשלוט בו.
  • אפשר לעשות שימוש חוזר בהחלטות עיצוב קיימות ב-App Design Center.
  • עוזרים למפתחי אפליקציות לפעול בהתאם למדיניות העיצוב שקבעתם.

כשמייבאים מודול Terraform, App Design Center יוצר תבנית רכיב תואמת בקטלוג של המרחב. לאחר מכן תוכלו להשתמש בתבנית כרכיב בתבנית העיצוב של האפליקציה.

כדי לקבל מידע על Terraform ב- Google Cloud, אפשר לעיין במקורות הבאים:

לפני שמתחילים

כדי לבצע את המשימות שמתוארות במסמך הזה, צריך לבקש מהאדמין להקצות לכם את התפקידים הנדרשים בתיקייה לניהול אפליקציות או בפרויקט הניהול, כמו שמופיע בטבלה הבאה:

משימה התפקידים הנדרשים
ייבוא מודולים של Terraform כרכיבים בהתאמה אישית אדמין של Application Design Center‏ (roles/designcenter.admin) או משתמש של Application Design Center‏ (roles/designcenter.user)

מידע נוסף על תפקידים זמין במאמר בקרת גישה באמצעות IAM.

הגדרה וייבוא של מודולים

כדי להתחבר ל-GitHub, ליצור קובץ מטא-נתונים ולייבא מודול Terraform, צריך לבצע את השלבים הבאים.

התחברות למאגר באמצעות Developer Connect

יוצרים חיבור Developer Connect למאגר GitHub שבו מאוחסנים מודולי Terraform Google Cloud . תשתמשו בחיבור הזה כשמייבאים.

  1. יוצרים חיבור Developer Connect.

    הוראות מפורטות מופיעות במאמר בנושא התחברות אל GitHub.

  2. יוצרים קישור למאגר Developer Connect.

    הוראות מפורטות מופיעות במאמר בנושא הוספת קישורים למאגרים לחיבורים קיימים.

אופציונלי: הכנת מטא-נתונים של מודול Terraform

כשמייבאים מודול Terraform, אפשר לספק מטא-נתונים משלכם או לאפשר ל-App Design Center ליצור קובץ מטא-נתונים בשבילכם.

לדוגמה, הנה קובץ metadata.yaml שאפשר ליצור עבור חשבון שירות:

  spec:
    info:
      actuationTool:
        flavor: Terraform
        version: ">= 1.3"
    interfaces: # Optional
      variables:
        - name: service_account
          connections:
            - source:
                source: github.com/terraform-google/terraform-google-service-accounts
                version: ">= 4.4"
              spec:
                outputExpr: email
    requirements:
      roles: # Optional after IAM integrations
        - level: Project
          roles:
            - roles/iam.serviceAccountUser
            - roles/iap.admin
            - roles/run.admin
            - roles/iam.serviceAccountAdmin
      providerVersions:
        - source: hashicorp/google
          version: ">= 6, < 7"
        - source: hashicorp/google-beta
          version: ">= 6, < 7"
    ui: # Optional
      input:
        variables:
          ca_root_module:
            name: ca_root_module
            title: CA Root Module
          service_account:
            name: service_account
            title: Service Account

ייבוא מהמאגר

אפשר ליצור רכיב של App Design Center על ידי ייבוא מודול Terraform שמבוסס על מוצר יחיד Google Cloud . אם מבצעים שינויים במודול Terraform במאגר, חוזרים על השלבים האלה כדי לייבא את השינויים.

כדי לייבא את מודול Terraform:

  1. מזהים את הקטלוג שבו רוצים ליצור את הרכיב.

      gcloud design-center spaces catalogs list \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.

    מידע נוסף זמין במאמר gcloud design-center spaces catalogs list.

  2. יוצרים תבנית קטלוג בקטלוג הפרטי של המרחב.

      gcloud design-center spaces catalogs templates create COMPONENT_TEMPLATE \
      --project=PROJECT \
      --catalog=CATALOG \
      --location=LOCATION \
      --space=SPACE \
      --template-category=component-template
    

    מחליפים את מה שכתוב בשדות הבאים:

    • COMPONENT_TEMPLATE: מזהה התבנית של תבנית הרכיב שרוצים ליצור.
    • PROJECT: מזהה פרויקט הניהול.
    • CATALOG: מזהה הקטלוג.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.

    מידע נוסף זמין במאמר gcloud design-center spaces catalogs templates create.

  3. יוצרים עדכון של תבנית קטלוג על סמך מודול Terraform במאגר.

      gcloud design-center spaces catalogs templates revisions create REVISION \
      --project=PROJECT \
      --catalog=CATALOG \
      --location=LOCATION \
      --space=SPACE \
      --template=COMPONENT_TEMPLATE \
      --developer-connect-repo=DEVELOPER_CONNECT_REPO \
      --developer-connect-repo-ref=DEVELOPER_CONNECT_REPO_REF \
      --developer-connect-repo-dir=DEVELOPER_CONNECT_REPO_DIR \
      --metadata=METADATA
    
    

    מחליפים את מה שכתוב בשדות הבאים:

    • REVISION: מזהה הגרסה של הגרסה שרוצים ליצור.
    • PROJECT: מזהה פרויקט הניהול.
    • CATALOG: מזהה הקטלוג.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.
    • COMPONENT_TEMPLATE: מזהה התבנית שיצרתם בשלב הקודם.
    • DEVELOPER_CONNECT_REPO: מאגר Developer Connect שמשמש כמקור. לדוגמה, projects/my-project/locations/us-central1/connections/my-connection/gitRepositoryLinks/my-repo.
    • DEVELOPER_CONNECT_REPO_REF: הענף או התג של Git במאגר. לדוגמה, refs/tags/v1.0.0 או refs/heads/main.
    • DEVELOPER_CONNECT_REPO_DIR: הספרייה במאגר. לדוגמה, modules/my-product.
    • כדי לציין את המטא-נתונים של מודול Terraform, מבצעים אחת מהפעולות הבאות:
      • כדי להשתמש בקובץ מטא-נתונים משלכם, מחליפים את METADATA בקובץ metadata.yaml שלכם.
      • כדי להשתמש אוטומטית בקובצי מטא-נתונים שנמצאים במאגר, לא מציינים את הסימון ‎--metadata.

    מידע נוסף זמין במאמר gcloud design-center spaces catalogs templates revisions create.

  4. שיתוף הקטלוג עם מרחבים אחרים.

      gcloud design-center spaces catalogs shares create SHARE \
      --project=PROJECT \
      --catalog=CATALOG \
      --location=LOCATION \
      --space=SPACE \
      --destination-space=DESTINATION_SPACE
    

    מחליפים את מה שכתוב בשדות הבאים:

    • SHARE: מזהה השיתוף שרוצים ליצור.
    • PROJECT: מזהה פרויקט הניהול.
    • CATALOG: מזהה הקטלוג.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.
    • DESTINATION_SPACE: מזהה המרחב ליעד.

    מידע נוסף זמין במאמר gcloud design-center spaces catalogs shares create.

יצירת תבנית של אפליקציה באמצעות רכיבים מיובאים

יוצרים תבנית של אפליקציה באמצעות הרכיבים המיובאים ורכיבים שסופקו על ידי Google.

  1. יוצרים תבנית חדשה של אפליקציה.

      gcloud design-center spaces application-templates create APPLICATION_TEMPLATE \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE
    

    מחליפים את מה שכתוב בשדות הבאים:

    • APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שרוצים ליצור.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.

    מידע נוסף זמין במאמר gcloud design-center spaces application-templates create.

  2. מזהים את כתובות ה-URI של גרסאות התבנית עבור הרכיבים שרוצים להוסיף לתבנית.

      gcloud design-center spaces shared-templates list \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --uri
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.

    מידע נוסף זמין במאמר gcloud design-center spaces shared-templates list.

  3. מוסיפים רכיב לתבנית האפליקציה.

      gcloud design-center spaces application-templates components create COMPONENT \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --application-template=APPLICATION_TEMPLATE \
      --shared-template-revision-uri=SHARED_TEMPLATE_URI
    

    מחליפים את מה שכתוב בשדות הבאים:

    • COMPONENT: מזהה הרכיב שרוצים להוסיף לתבנית.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.
    • APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים את הרכיב.
    • SHARED_TEMPLATE_URI: ה-URI של תבנית הרכיב המשותפת. לדוגמה, projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.

    מידע נוסף זמין במאמר gcloud design-center spaces application-templates components create.

  4. מוסיפים רכיב שני לתבנית.

      gcloud design-center spaces application-templates components create COMPONENT_2 \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --application-template=APPLICATION_TEMPLATE \
      --shared-template-revision-uri=SHARED_TEMPLATE_URI_2
    

    מחליפים את מה שכתוב בשדות הבאים:

    • COMPONENT_2: מזהה הרכיב של הרכיב השני שרוצים להוסיף לתבנית.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.
    • APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים את הרכיב.
    • SHARED_TEMPLATE_URI_2: הרכיב השני הוא ה-URI של תבנית משותפת. לדוגמה, projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.

    מידע נוסף זמין במאמר gcloud design-center spaces application-templates components create.

  5. יוצרים חיבור בין שני הרכיבים.

      gcloud design-center spaces application-templates components connections create CONNECTION \
      --project=PROJECT \
      --location=LOCATION \
      --space=SPACE \
      --application-template=APPLICATION_TEMPLATE \
      --component=COMPONENT \
      --destination-component-uri=SHARED_TEMPLATE_URI_2
    

    מחליפים את מה שכתוב בשדות הבאים:

    • CONNECTION: מזהה החיבור של החיבור שרוצים להוסיף לתבנית.
    • PROJECT: מזהה פרויקט הניהול.
    • LOCATION: מזהה המיקום.
    • SPACE: מזהה המרחב.
    • APPLICATION_TEMPLATE: מזהה התבנית של תבנית האפליקציה שבה מוסיפים את הרכיב.
    • SHARED_TEMPLATE_URI_2: הרכיב השני הוא ה-URI של תבנית משותפת. לדוגמה, projects/my-project/locations/us-central1/spaces/my-space/sharedTemplates/my-shared-template/revisions/rev1.

    מידע נוסף זמין במאמר gcloud design-center spaces application-templates components connections create.

המאמרים הבאים