בדף הזה מוסבר איך ליצור קובץ YAML של טריגרים ב-Secure Source Manager. אפשר להשתמש בקובץ triggers כדי להפוך את הבנייה לאוטומטית על סמך אירועים של בקשות push ו-pull במאגר Secure Source Manager.
מידע על השדות שאפשר לכלול בקובץ של טריגרים מופיע במאמר סכימת קובץ של טריגרים.
לפני שמתחילים
- יצירת מופע של Secure Source Manager
- יצירת מאגר Secure Source Manager
- כדי לקבל מידע על השדות שאפשר לכלול בקובץ טריגרים, אפשר לקרוא את סכימת קובץ הטריגרים.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות ליצירת קובץ טריגרים, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:
- Secure Source Manager Instance Accessor (
roles/securesourcemanager.instanceAccessor) on the instance - Secure Source Manager Repository Writer (
roles/securesourcemanager.repoWriter) on the repository
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
יצירת קובץ תצורה של Cloud Build
כדי להפעיל טריגרים ב-Secure Source Manager, צריך לציין קובץ תצורת build לכל טריגר.
קובץ תצורה של build מכיל הוראות ל-Cloud Build לביצוע משימות על סמך המפרטים שלכם. לדוגמה, קובץ תצורת ה-build יכול להכיל הוראות ליצירה, לאריזה ולדחיפה של קובצי אימג' של Docker.
יוצרים את קובצי תצורת ה-build בענף או בענפים שמהם רוצים לבצע את ה-build. כדי ליצור את קובצי התצורה של ה-build, פועלים לפי ההוראות שבמאמר יצירת קובץ תצורת build.
יצירת קובץ טריגרים
\צריך ליצור את קובץ ההגדרות של הטריגרים בענף ברירת המחדל של המאגר.
כדי ליצור קובץ תצורה של טריגרים:
- במאגר המקומי או בממשק האינטרנט של Secure Source Manager, עוברים אל ענף ברירת המחדל.
יוצרים קובץ בשם
.cloudbuild/triggers.yaml.מגדירים את הטריגר בקובץ
.cloudbuild/triggers.yaml:triggers: - name: TRIGGER_NAME project: PROJECT_ID configFilePath: CLOUD_BUILD_CONFIG_PATH eventType: EVENT_TYPE ignoredGitRefs: IGNORED_GIT_REFS includedGitRefs: INCLUDED_GIT_REFS serviceAccount: SERVICE_ACCOUNT includedFiles: INCLUDED_FILES ignoredFiles: IGNORED_FILES disabled: DISABLED_BOOL substitutions: _VARIABLE_NAME: VARIABLE_VALUE OVERRIDE_VARIABLE_NAME: OVERRIDE_VARIABLE_VALUEמחליפים את מה שכתוב בשדות הבאים:
TRIGGER_NAMEבשם של הטריגר. שמות של טריגרים יכולים להכיל רק תווים אלפאנומריים ומקפים, והם לא יכולים להתחיל או להסתיים במקף. אורך השם של הטריגר מוגבל ל-64 תווים.-
PROJECT_IDבמזהה הפרויקט ב- Google Cloud שבו הפעלתם את Cloud Build. השדה הזה הוא אופציונלי. ברירת המחדל היא פרויקט Secure Source Manager. -
CLOUD_BUILD_CONFIG_PATHעם הנתיב לקובץ תצורת ה-build של Cloud Build שרוצים להשתמש בו בשביל הטריגר הזה. השדה הזה הוא אופציונלי. ערך ברירת המחדל הוא.cloudbuild/cloudbuild.yaml.
EVENT_TYPEעם סוג האירוע שרוצים להפעיל את הבנייה. האפשרויות הן:-
pushכדי להפעיל את הפעולה כשמתבצעת דחיפה לענפים שצוינו -
pull_requestכדי להפעיל pull request בענפים שצוינו
השדה הזה הוא אופציונלי. ערך ברירת המחדל הוא
push.-
INCLUDED_GIT_REFSעם פורמט אופציונלי של ביטוי רגולרי RE2 שמתאים להפניות של Git שרוצים להפעיל בשבילן בנייה. ערך ברירת המחדל הוא ריק. ערך ריק מציין שאין הגבלות.
IGNORED_GIT_REFSעם ביטוי רגולרי אופציונלי בפורמט של ביטוי רגולרי RE2, שמתאים להפניות Git שלא רוצים להפעיל בשבילן בנייה. ערך ברירת המחדל הוא ריק. ערך ריק מציין שאין הגבלות. השדהignoredGitRefsנבדק לפני השדהincludedGitRefs. מידע נוסף על השדות האלה זמין במאמר בנושא סכימת קובץ הטריגרים.
SERVICE_ACCOUNTמחליפים בחשבון השירות של Cloud Build שבו רוצים להשתמש בשביל הבנייה בפורמטprojects/PROJECT_ID/serviceAccounts/ACCOUNT. מחליפים את ACCOUNT בכתובת האימייל או במזהה הייחודי של חשבון השירות. מומלץ להגדיר חשבון שירות שצוין על ידי המשתמש. אי אפשר להשתמש בחשבון השירות מדור קודם של Cloud Build בגלל המגבלות שלו.
INCLUDED_FILESעם ביטוי רגולרי אופציונלי בפורמט RE2 שתואם לקבצים שרוצים להפעיל בשבילם build.אם חלק מהקבצים ששונו לא תואמים לשדה המסנן
ignoredFiles, והקבצים ששונו תואמים לשדה המסנןincludedFiles, יופעל build. ערך ברירת המחדל הוא ריק. ערך ריק מציין שאין הגבלות.IGNORED_FILESעם ביטוי רגולרי אופציונלי בפורמט RE2 שתואם לקבצים שלא רוצים להפעיל בשבילם build.אם כל הקבצים ששונו בהתחייבות תואמים לשדה המסנן הזה, לא מופעלת בנייה. ערך ברירת המחדל הוא ריק. ערך ריק מציין שאין הגבלות.
DISABLED_BOOLעםtrueכדי להשבית את הטריגר, אוfalseכדי להפעיל אותו. השדה הזה הוא אופציונלי. ערך ברירת המחדל הואfalse.VARIABLE_NAMEבשם של משתנה שרוצים להוסיף לקובץ של הטריגרים.VARIABLE_VALUEבערך של המשתנה.
OVERRIDE_VARIABLE_NAMEבשם ברירת המחדל של משתנה ההחלפה ב-Secure Source Manager. מידע על משתני ברירת המחדל הזמינים להחלפה מופיע בקטע 'החלפות' במאמר סכימת קובץ הטריגרים.OVERRIDE_VARIABLE_VALUEבערך שרוצים להשתמש בו במקום ערך ברירת המחדל של משתנה ההחלפה שמוגדר כברירת מחדל.
מבצעים Commit של קובץ ההגדרות של הטריגר לסניף ברירת המחדל.
אחרי ששומרים את קובץ הטריגרים, Secure Source Manager מפעיל בנייה על סמך ההגדרה בקובץ הטריגרים.
Secure Source Manager קורא את קובצי ההגדרות ואת ה-SHA של הקומיט או את הפניה ל-Git שמשויכים לסוגי האירועים הבאים:
- עבור אירועים מסוג
push, Secure Source Manager יקרא את ה-SHA של הקומיט או את Git ref כשהפעולה push תושלם. - באירועים מסוג
pull_request, Secure Source Manager קורא את ה-SHA של הקומיט או את הפניה של Git כשמושכים את השינויים בבקשת המיזוג.
- עבור אירועים מסוג
צפייה בסטטוס של ה-build
כשגרסת build מופעלת על ידי אירוע של push או בקשת משיכה (pull request), הסטטוס של הקומיט ושל גרסת ה-build מוצג בממשק האינטרנט של Secure Source Manager.
הערכים האפשריים של סטטוס הבנייה הם:
-
SUCCESS: הבנייה הושלמה בהצלחה.
אזהרה: הייתה בעיה בניסיון לבנות.
FAILURE: ה-build נכשל במהלך הביצוע.
אתם יכולים למנוע מיזוג של קומיטים עם בנייה שנכשלה עם ענפים חשובים, אם תגדירו כלל הגנה על ענפים שידרוש בדיקת סטטוס מוצלחת מטריגרים שהוגדרו בקובץ הטריגרים. מידע נוסף על הגנה על ענפים זמין במאמר סקירה כללית על הגנה על ענפים.
כדי לראות את סטטוס הבנייה של אירוע push:
בממשק האינטרנט של Secure Source Manager, עוברים למאגר.
אם אירוע ה-push האחרון הפעיל בנייה, הסטטוס מוצג לצד ה-SHA של הקומיט. כדי לראות פרטים על הסטטוס, לוחצים על הסטטוס.
כדי לראות את סטטוס הבנייה של קומיטים קודמים, בוחרים באפשרות Commits כדי לראות את היסטוריית הקומיטים, ואז לוחצים על הסטטוס שרוצים לראות את הפרטים שלו.
כדי לראות את סטטוס הבנייה של אירוע בקשת משיכה:
- בממשק האינטרנט של Secure Source Manager, לוחצים על Pull requests.
לוחצים על בקשת המשיכה שרוצים לראות.
אם הבנייה הופעלה על ידי בקשת המשיכה, יופיע קטע עם הכותרת All checks were successful (כל הבדיקות עברו בהצלחה) או Some checks reported warnings (חלק מהבדיקות הציגו אזהרות).
המאמרים הבאים
- איך משתמשים בקובץ טריגרים כדי להתחבר ל-Cloud Build.