בדף הזה מוסבר על סוגי בנייה ב-Cloud Build.
הגדרת build
פרמטרים חיצוניים
בטבלה הבאה מוצגים סוגים של פרמטרים חיצוניים שאפשר להשתמש בהם ב-Cloud Build. פרמטרים חיצוניים הם ערכים שאתם מציינים, והם לא מופיעים בתצורת ה-build שלכם. זה כולל פרמטרים של טריגרים שלא מופיעים בקובץ cloudbuild.yaml.
| שדה | סוג | פרטים |
|---|---|---|
| buildConfigSource | אובייקט | המיקום שממנו נקראה הגדרת ה-build. ב- BuildTrigger, הערך הזה תואם למאגר המקור שהפעיל את הבנייה (בנייה שהופעלה על ידי אירוע SCM) או ל-gitFileSource לכל שאר סוגי הטריגרים.יוגדר buildConfigSource או buildConfig (במקרה של הגדרת build מוטבעת). |
| buildConfigSource.ref | מחרוזת | הפניה ל-Git בתוך buildConfigSource.repository שממנה נקראה ההגדרה, כהפניה מלאה ל-Git (מתחילה ב-refs/) או כ-SHA של קומיט (הקסדצימלי באותיות קטנות). ה-SHA של הקומיט
משמש רק אם הוא מצוין בטריגר. |
| buildConfigSource.repository | מחרוזת | מזהה URI של HTTPS של מאגר Git שמכיל את קובץ הגדרות ה-build, עם פרוטוקול https://. הוא יתחיל ב-git+ כדי להיות תואם לפורמט SPDX. מידע נוסף על דרישות הפורמט זמין במאמר בנושא ResourceURI. |
| buildConfigSource.path | מחרוזת | הנתיב לקובץ תצורת ה-build בתוך הקומיט. דוגמה:
cloudbuild.yamlהמאפיין הזה לא יכול להיות מוגדר יחד עם pathAutodetect. צריך להגדיר בדיוק אחד מהשדות האלה לערך שאינו ברירת המחדל. |
| buildConfigSource.pathAutoDetect | בוליאני | אם הערך הוא true, המערכת זיהתה אוטומטית את path, בהתאם לאפשרות autodetect ב-BuildTrigger. הערך False נחשב שווה ערך לערך שלא הוגדר. אם לא הפעלתם זיהוי אוטומטי, Cloud Build משתמש בערך path במקום זאת.אי אפשר להשתמש בהן ביחד עם path. חובה להגדיר בדיוק אחד מהשדות האלה עם ערך שאינו ברירת המחדל. |
| sourceToBuild | אובייקט | קוד המקור שנבדק ונבנה. בדרך כלל זהה ל-buildConfigSource, והוא שונה רק אם הוגדר gitFileSource ב-BuildTrigger.השדה הזה לא קיים אם הערכים של repository ושל ref זהים לערכים של buildConfigSource ושל dir, ואם הערך של dir ריק.ב-BuildTrigger, הערך הזה תואם ל- sourceToBuild או לקומיט שהפעיל את הבנייה, בהתאם לסוג הטריגר. |
| sourceToBuild.ref | מחרוזת | הפניה ל-Git בתוך sourceToBuild.repository שבוצעה לה הוצאה, כהפניה מוגדרת במלואה ל-Git (מתחילה ב-refs/) או כ-SHA של שמירה (הקסדצימלי באותיות קטנות). משתמשים ב-SHA של קומיט רק אם הוא מצוין בטריגר. |
| sourceToBuild.repository | מחרוזת | מזהה URI של מאגר ה-Git שנבדק, עם פרוטוקול https://. הקידומת תהיה git+. |
| sourceToBuild.dir | מחרוזת | הספרייה בתוך הקומיט שבה יופעל ה-build, בלי קו נטוי בסוף. יכול להיות ריק או לא מוגדר. |
| buildConfig | מחרוזת | כשמספקים הגדרת build מוטמעת, כמו ב-build שנשלח באופן ידני, הפרטים הבאים נרשמים. – steps – build options (לדוגמה: environment variables, volumes, worker pool details, machineType, log details) – substitutions אם הגדרת ה-build נקראה ממאגר, היא מתועדת בקטע buildConfigSource והגדרת ה-build המוטמעת מושמטת.המידע הזה מאוחסן כמחרוזת JSON סדרתית בקידוד base64. |
| substitutions | map<string,string></string,string> | מפה של (מחרוזת -> מחרוזת) שמכילה את ההחלפות שיש לבצע במשאב Build. הוא מכיל רק החלפות של 'זמן ריצה' או 'עצמאיות' שלא מתועדות בהגדרת ה-build, כלומר מועברות מטריגר או מדגל של ה-CLI של gcloud. הרשומה הזו לא כוללת את החלפות ברירת המחדל שסופקו על ידי המערכת, כי הן נחשבות internalParameters.ההחלפות מופיעות בשדה הזה גם אם הן מוזכרות או בשימוש בהגדרות הבנייה. |
פרמטרים פנימיים
בטבלה הבאה מוצגים הפרמטרים הפנימיים שמוגדרים על ידי Cloud Build עבור הבנייה, אלא אם אתם מחליפים אותם. מידע נוסף מופיע במאמר בנושא החלפות ברירת מחדל.
| שדה | פרטים |
|---|---|
| triggerUri | ה-URI של המשאב של הטריגר שהפעיל את הבנייה הזו, ובמקרה הזה שם המשאב המלא. אם ה-build לא הופעל, השורה הזו לא תופיע. |
| systemSubstitutions | יש קבוצת משנה של ערכי החלפה שמוגדרים כברירת מחדל, שמועברים אוטומטית ב-builds של Cloud Build, כמו PROJECT_ID ו-BUILD_ID.אם מחליפים אחת מהחלפות ברירת המחדל של Cloud Build, ההחלפות לא יוצגו כאן. הערכים שלכם יופיעו במקום זאת ב- externalParameters.substitutions.
|
יחסי תלות שנפתרו
אם ל-Build יש מאגר מקור או מאגר הגדרות Build, המאגר מתואר בקטע resolvedDependencies של BuildDefinition.
ResolvedDependencies לעמוד בדרישות ResourceDescriptor המפרט.
סוג התלות |
פרטים |
|---|---|
מאגר תצורת build |
המאגר שממנו נמשכה הגדרת ה-Build (כלומר, cloudbuild.yaml), במקרה של Builds שמופעלים על ידי טריגר.יכול להיות שהערך יהיה ריק אם מדובר בהגדרת build שלא נקראה ממאגר ומופיעה בשורה, ובמקרה כזה היא תושמט. |
מאגר המקור |
המאגר שממנו נמשך קוד המקור לבנייה. הוא יכול להיות זהה לערך של buildConfigSource, או שונה ממנו. אם הערך זהה לערך של buildConfigSource, משמיטים את sourceToBuild, למשל, ב-builds שמופעלים על ידי SCM.
יכול להיות שהשדה sourceToBuild יהיה ריק אם ה-build מופעל באמצעות –no-source, והוא יושמט. |
לדוגמה, פרטי resolvedDependencies הבאים מכילים גם buildConfigRepo וגם sourceRepo (שהם זהים), וגם תמונה של שלב בנייה.
"resolvedDependencies": [
{
"uri": "git+https://github.com/octocat/hello-world.git",
"digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"}
}, {
"uri": "gcr.io/cloud-builders/git",
"digest": {
"sha256": "28ff94e63e4058afc3f15b4c11c08cf3b54fa91faa646a4bba7158df"}
}
]
RunDetails
| שדה | פרטים |
|---|---|
| builder | מכיל שדה משנה id שמזהה את פלטפורמת ה-Build שהפעילה את הפעולה ואכלסה את המידע הזה. הוא מכיל גם את רמת SLSA. הערך הצפוי id הוא https://cloudbuild.googleapis.com/GoogleHostedWorker. |
| מטא-נתונים | מטא-נתונים נוספים על הביצוע הספציפי הזה של הבנייה.
המשתנה invocationId מציג את כתובת ה-URL של הגרסה, לדוגמה:
https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/builds/BUILD_ID.
השדות startedOn ו-finishedOn מכילים את חותמות הזמן של תחילת הבנייה וסיומה.
|
| byproducts | עדיין לא בשימוש. התיקייה הזו מיועדת להכיל ארטיפקטים נוספים שלא נחשבים כפלט של הבנייה, אבל יכולים להיות שימושיים לפתרון בעיות או לתגובה לאירועים. |
| systemSubstitutions | יש קבוצת משנה של ערכי החלפה שמוגדרים כברירת מחדל, שמועברים אוטומטית ב-builds של Cloud Build, כמו PROJECT_ID ו-BUILD_ID.אם מחליפים אחת מהחלפות ברירת המחדל של Cloud Build, ההחלפות לא יוצגו כאן. הערכים שלכם יופיעו במקום זאת ב- externalParameters.substitutions.
|