אם הפעלתם השקות אוטומטיות, בכל פעם שתדחוףו השמה חדשה להסתעפות הפעילה במאגר GitHub, App Hosting ישיק באופן אוטומטי גרסה חדשה של האפליקציה. אפשר לבדוק את סטטוס ההשקה במסוף Firebase או בבדיקת GitHub של App Hosting.
בנוסף, App Hosting תומך בהשקות שמופעלות באופן ידני לשילוב CI/CD או בכל מקרה אחר שבו רוצים לאלץ השקה.
הצגת השקות
במסוף Firebase יש גישה למידע מפורט על כל ההשקות של האפליקציה. ב-App Hosting, בוחרים באפשרות View (תצוגה) של הקצה העורפי שרוצים לראות את ההשקות שלו. בכרטיסייה Rollouts של הקצה העורפי מוצגת טבלה עם היסטוריה של כל ההשקות של הקצה העורפי הזה.
כל רשומה של השקה מכילה קישורים למשימה Cloud Build ולשינוי או ל-commit שהפעילו את ההשקה, יחד עם מידע בסיסי על המחבר, תאריך היצירה והסטטוס של ההשקה.
- המשימה Cloud Build היא סביבת ה-build שבה הפקודה App Hosting מפעילה את הפקודה build של האפליקציה. כדי לגשת ליומני Cloud Build, לוחצים על מזהה ה-build.
- השינוי הוא השמירה ב-GitHub או פעולה אחרת שהפעילה את ההשקה.
הפעלה ידנית של השקה
אם רוצים להפעיל השקה ידנית ממקור GitHub בלי לדחוף התחייבות חדשה, אפשר ליצור השקה מהמסוף Firebase או מ-CLI של Firebase. האפשרות הזו שימושית במקרים כמו:
- איך מאלצים יצירת מחדש של תוכן סטטי.
- מתן הרשאה למערכת CI/CD להפעיל השקות.
- הגבלת השקות לייצור לתאריכים או לשעות ספציפיים.
כדי להפעיל השקה במסוף Firebase:
- בדף App Hosting, בוחרים באפשרות View עבור הקצה העורפי שרוצים ליצור לו השקה.
- בסיכום של לוח הבקרה של הקצה העורפי, בוחרים באפשרות Create rollout.
- בוחרים את ההסתעפות שרוצים לפרוס.
- בוחרים את השמירה שרוצים לפרוס, את השמירה האחרונה או שמירה מוקדמת יותר שצוינה לפי מזהה השמירה שלה.
- בוחרים באפשרות יצירה. הסטטוס ומספר ה-build של ההשקה מוצגים בטבלה של היסטוריית ההשקה. כשתהליך ההשקה יושלם, ההשקה הזו תוצג בתור ההשקה הנוכחית.
כדי להפעיל השקה ב-CLI של Firebase, מריצים את הפקודה הבאה ובוחרים את ההסתעפות להשקה כשמופיעה ההודעה הרלוונטית:
firebase apphosting:rollouts:create BACKEND_ID
לחלופין, אפשר להתחיל השקה של השמירה האחרונה להסתעפות ספציפית באמצעות האפשרות --git-branch
:
firebase apphosting:rollouts:create BACKEND_ID
--git_branch BRANCH_NAME
אפשר גם ליצור השקה עם התחייבות ספציפית באמצעות האפשרות --git-commit
:
firebase apphosting:rollouts:create BACKEND_ID
--git_commit COMMIT_ID
שחזור של השקה קודמת
בשירות App Hosting יש שתי אפשרויות לשחזור השקה קודמת:
- חזרה לאחור באופן מיידי בלי בנייה מחדש
- יצירה מחדש וחזרה לגרסה קודמת
יצירת ביטול מיידי
לפעמים צריך לחזור במהירות לגרסה ישנה יותר של האפליקציה. למשל, אם גיליתם באג קריטי בהשקה חדשה או אם יש לכם build לא יציב שחוסם השקות חדשות. במקרים כאלה תוכלו לשחזר קובץ אימג' קיים של קונטיינר לבחירתכם מהשקה קודמת. לא נוצרת מחדש קובץ האימג' הזה, אלא נעשה בו שימוש בקוד ובהגדרות הסביבה מהפעם הראשונה שנוצר.
כדי ליצור ביטול מיידי:
- בדף App Hosting, בוחרים באפשרות View לקצה העורפי שרוצים ליצור עבורו ביטול קוד.
- לוחצים על הכרטיסייה השקות.
- בטבלה History לקצה העורפי, בוחרים בתפריט שלוש הנקודות כדי לבחור גרסה קודמת של build.
- בוחרים באפשרות החזרה לגרסה הזו ומאשרים.
יצירה מחדש וחזרה למצב קודם
אם רוצים לחזור לגרסה ישנה יותר של האפליקציה אבל לשמור על ההגדרות הנוכחיות, אפשר ליצור מחדש את האפליקציה כחלק מתהליך החזרה לאחור. לדוגמה, אם בגרסה האחרונה עודכנו ערכים של מפתחות API ב-Secret Manager, אפשר לבנות מחדש כדי לוודא שהמפתח החדש ישמש את האפליקציה אחרי החזרה לאחור.
כדי ליצור מחדש ולבצע חזרה לאחור:
- בדף App Hosting, בוחרים באפשרות View dashboard לקצה העורפי שרוצים ליצור עבורו ביטול קוד.\
- לוחצים על הכרטיסייה השקות.
- בוחרים באפשרות יצירת השקה.
- בתיבת הדו-שיח Create a rollout, מסמנים את האפשרות Earlier commit ומזינים את מזהה השמירה של הגרסה שרוצים ליצור מחדש ולחזור אליה. מזהה השמירה הוא חלק מ'פרטי השינוי' של כל השקה שמופיעה בהיסטוריית ההשקות,והוא מופיע בסוגריים בתווית.
- בוחרים באפשרות Create כדי להתחיל את החזרה לאחור.
שינוי הגדרות ההשקה
אפשר לשנות את ההסתעפות הפעילה להשקות ולהשבית או להפעיל השקות אוטומטיות באמצעות אמצעי הבקרה בתצוגה הגדרות > פריסה בלוח הבקרה של הקצה העורפי.
- בדף App Hosting, בוחרים באפשרות View (הצגה) לקצה העורפי שבו רוצים לעדכן את הגדרות ההשקה.
- בלוח הבקרה של הקצה העורפי, בוחרים באפשרות הגדרות. בתצוגת ברירת המחדל מוצג מידע על דומיינים ועל דומיינים מותאמים אישית.
- בוחרים בתצוגה פריסה. בתצוגה הזו אפשר לשנות את ההסתעפות של הגרסה הפעילה להשקות, ולהשבית או להפעיל השקות אוטומטיות. בנוסף, יש אפשרויות להגדיר את ספריית השורש של האפליקציה ואת הסביבה לקצה העורפי (ראו פריסה למספר סביבות).