מודולים של תבניות הם קובצי עזר שמבצעים פונקציות ספציפיות שיכולות לשפר את היעילות של התבניות. לדוגמה, יכול להיות לכם מודול שמייצר שמות ייחודיים למשאבים. Deployment Manager יכול להריץ כל מודול שנכתב ב-Python או ב-Jinja.
לפני שמתחילים
- אם רוצים להשתמש בדוגמאות לשורת הפקודה במדריך הזה, צריך להתקין את כלי שורת הפקודה`gcloud`.
- כדי להשתמש בדוגמאות ל-API במדריך הזה, צריך להגדיר גישה ל-API.
- איך יוצרים תבנית בסיסית
- איך יוצרים הגדרה
יצירת מודול תבנית
מודול תבנית נחשב לקובץ תבנית רגיל, ואפשר לכתוב אותו ב-Jinja או ב-Python.
לדוגמה, זוהי תבנית עזר שיוצרת שם בהינתן קידומת וסיומת.
Jinja
ב-Jinja, תבנית העזר הזו (בדוגמה הזו, helpers/common.jinja) תיראה כך:
אחר כך תוכלו לייבא את התבנית הזו ולהשתמש בה כמודול. בתבנית Jinja, אפשר להשתמש במודול כך:
לאחר מכן, התצורה צריכה לייבא את שני הקבצים (כולל הקובץ helpers/common.jinja):
שירות Deployment Manager ירחיב את ההגדרה, וההגדרה הסופית תיראה כך:
resources:
- name: myfrontend-prod
type: compute.v1.instance
properties:
zone: us-central1-f
machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/machineTypes/f1-micro
disks:
- deviceName: boot
type: PERSISTENT
boot: true
autoDelete: true
initializeParams:
sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/family/debian-9
networkInterfaces:
- network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default
accessConfigs:
- name: External NAT
type: ONE_TO_ONE_NAT
Python
ב-Python, תבנית העזר (בדוגמה הזו, helpers/common.py) תיראה כך:
כדי להשתמש בו בתבנית Python:
לאחר מכן, התצורה צריכה לייבא את שני הקבצים (כולל הקובץ helpers/common.py):
הנה מודול עזר מורכב יותר:
המאמרים הבאים
- משתמשים במאפייני התבנית כדי ליצור הפשטה של התוכן.
- מאכלסים מידע על הפרויקטים והפריסות באמצעות משתני סביבה.
- מוסיפים תבנית באופן קבוע לפרויקט כסוג מורכב.