בדף הזה מוסבר על הסכימה של קובץ הטריגרים של Secure Source Manager. הוראות ליצירת קובץ טריגרים מפורטות במאמר יצירת קובץ טריגרים.
קובץ טריגרים מכיל הוראות ל-Secure Source Manager להפעלת השלבים שמוגדרים בקובץ ההגדרות של Cloud Build על סמך אירוע של בקשת push או pull ב-Secure Source Manager.
אתם יכולים להגדיר את כללי ההגנה על הענף כך שידרשו בדיקת סטטוס מוצלחת מטריגרים ספציפיים. מידע נוסף על הגנה על ענפים זמין במאמר סקירה כללית על הגנה על ענפים.
המבנה של קובץ טריגרים
צריך ליצור את קובץ ההגדרות של הטריגרים בענף ברירת המחדל של המאגר. אפשר לכתוב את קובץ הטריגרים באמצעות תחביר YAML.
קובץ טריגרים בנוי באופן הבא:
triggers:
- name: string
project: string
configFilePath: string
eventType: string
includedGitRefs: string
ignoredGitRefs: string
includedFiles: string
ignoredFiles: string
serviceAccount: string
disabled: bool
substitutions: map[string]string
- name: string
...
כל קטע עם שם בקובץ הטריגרים מגדיר את תצורת Cloud Build שבה יש להשתמש עבור סוג האירוע הנתון ב-Secure Source Manager.
טריגרים
טריגר מציין באיזה סוג אירוע של Secure Source Manager רוצים להשתמש כדי להפעיל את השלמת השלבים בקובץ הגדרות ספציפי של Cloud Build. אפשר גם לציין אילו ענפים ינוטרו לגבי האירוע שצוין.
משתמשים בשדה name בקובץ הטריגרים כדי לזהות טריגר. דוגמה להגדרה שאפשר להגדיר בקובץ הטריגרים:
triggers:
- name: presubmit-test
project: my-project
configFilePath: test.yaml
eventType: pull_request
includedGitRefs: ^main$
ignoredGitRefs: .*log
serviceAccount: projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com
includedFiles: .*
ignoredFiles: my-file.txt
disabled: false
- name: postsubmit-run
project: my-project
configFilePath: run.yaml
eventType: push
includedGitRefs: ^main$
ignoredGitRefs: dev-branch
serviceAccount: projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com
disabled: false
substitutions:
_NODE_VERSION_1: v6.9.1
REPO_NAME: dev
name
חובה. משתמשים בשדה name של הטריגר כדי לזהות את הטריגר. שמות של טריגרים יכולים להכיל רק תווים אלפאנומריים ומקפים, והם לא יכולים להתחיל או להסתיים במקף. אורך השם של הטריגר מוגבל ל-64 תווים.
project
זה שינוי אופציונלי. משתמשים בשדה project כדי לזהות את הפרויקט Google Cloud שבו הפעלתם את Cloud Build.
ברירת המחדל היא פרויקט Secure Source Manager.
configFilePath
זה שינוי אופציונלי. הנתיב לקובץ תצורת ה-build של Cloud Build.
ערך ברירת המחדל הוא .cloudbuild/cloudbuild.yaml.
eventType
זה שינוי אופציונלי. סוג האירוע להפעלה. האפשרויות הן push לדחיפות לענפים שנבחרו או pull_request לבקשות משיכה לענפים שנבחרו.
ערך ברירת המחדל הוא push.
includedGitRefs
זה שינוי אופציונלי. ביטוי רגולרי בפורמט RE2 שתואם להפניות ל-Git שמפעילות את הבנייה.
ברירת המחדל היא ריקה. שדה ריק של פילטר includedGitRefs מציין שאין הגבלות.
אם הפניה ל-Git לא נכללת בשדה המסנן ignoredGitRefs, Secure Source Manager בודק את שדה המסנן includedGitRefs. אם ההפניה ל-Git נמצאת בשדה המסנן includedGitRefs, יופעל build. אם שדה המסנן includedGitRefs לא ריק, וההפניה ל-Git לא נכללת בשדה המסנן includedGitRefs, לא מופעלת בנייה.
ignoredGitRefs
זה שינוי אופציונלי. ביטוי רגולרי בפורמט RE2 שתואם להפניות Git שלא אמורות להפעיל בנייה.
ברירת המחדל היא ריקה. שדה ריק של פילטר ignoredGitRefs מציין שאין הגבלות.
הכלי Secure Source Manager בודק קודם את שדה המסנן ignoredGitRefs. אם הוא לא ריק וההפניה ל-Git תואמת לשדה המסנן ignoredGitRefs, לא מופעלת בנייה.
serviceAccount
חובה. חשבון השירות של Cloud Build שבו יש להשתמש לבנייה.
פורמט: projects/PROJECT_ID/serviceAccounts/ACCOUNT
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: עם Google Cloud מזהה הפרויקט שבו יצרתם את חשבון השירות. -
ACCOUNT: עם כתובת האימייל או המזהה הייחודי של חשבון השירות.
includedFiles
זה שינוי אופציונלי. ביטוי רגולרי בפורמט RE2 שתואם לקבצים שאמורים להפעיל build כשמשנים אותם.
אם הקבצים ששונו לא נמצאים בשדה המסנן ignoredFiles, והקבצים ששונו תואמים לשדה המסנן includedFiles, יופעל build.
ברירת המחדל היא ריקה. שדה מסנן ריק מציין שאין הגבלות.
ignoredFiles
זה שינוי אופציונלי. ביטוי רגולרי בפורמט RE2 שתואם לקבצים שלא אמורים להפעיל בנייה כשהם משתנים.
אם שדה המסנן ignoredFiles לא ריק, פעולות קומיט שכוללות רק קבצים שתואמים לשדה המסנן ignoredFiles לא יפעילו בנייה. ברירת המחדל היא ריקה. מסנן ריק מציין שאין הגבלות.
disabled
זה שינוי אופציונלי. ערך בוליאני שקובע אם ההפעלה מושבתת או לא. הערכים האפשריים הם true או false.
ערך ברירת המחדל הוא false.
substitutions
אפשר להשתמש בהחלפות בקובץ הטריגרים כדי להחליף משתנים ספציפיים בזמן ה-build בקובץ התצורה של Cloud Build.
ההחלפות חייבות להתחיל בקו תחתון, והן יכולות להכיל רק אותיות רישיות, קווים תחתונים ומספרים, או להיות אחד ממשתני ההחלפה של Secure Source Manager.
Secure Source Manager מספק את משתני ההחלפה הבאים שמוגדרים כברירת מחדל:
-
TRIGGER_NAME: השם שמשויך לטריגר. -
COMMIT_SHA: מזהה הקומיט שמשויך לטריגר. -
REVISION_ID: מזהה הקומיט שמשויך לטריגר. -
SHORT_SHA: שבעת התווים הראשונים שלCOMMIT_SHA. -
REPO_NAME: שם המאגר. לדוגמה:my-repo. -
REPO_FULL_NAME: נתיב המשאב של המאגר, לדוגמה:projects/my-project/locations/us-central/repositories/test-repo. -
REF_NAME: השם של הענף או התג שמשויכים לטריגר. -
TRIGGER_BUILD_CONFIG_PATH: הנתיב לקובץ הגדרות ה-build שבו נעשה שימוש במהלך ההרצה של ה-build.
למידע על איך לכלול משתני החלפה של Secure Source Manager בקובץ תצורת ה-build של Cloud Build, ראו החלפת ערכי משתנים.
המאמרים הבאים
- יצירת קובץ של טריגרים
- מידע נוסף על קובצי הגדרה של Cloud Build זמין במאמר בנושא סכימת קובץ הגדרת build