אם הפעלתם את הפריסה האוטומטית, בכל פעם שתדחפו קומיט חדש לענף הפעיל במאגר GitHub, App Hosting יפרוס באופן אוטומטי גרסה חדשה של האפליקציה. תוכלו לבדוק את סטטוס הפריסה במסוף Firebase או בבדיקה של App Hosting GitHub.
בנוסף, App Hosting תומך בהפעלת השקות ידנית לשילוב CI/CD או לכל מקרה אחר שבו רוצים להפעיל השקה.
צפייה בהשקות
במסוף Firebase יש גישה למידע מפורט על כל ההשקות של האפליקציה.
עוברים אל Hosting & Serverless > App Hosting ולוחצים על View ליד העורף שרוצים לראות את ההשקות שלו. בכרטיסייה Rollouts (השקות) של העורף מוצגת טבלה עם היסטוריה של כל ההשקות של העורף הזה.
כל רשומה של השקה כוללת קישורים לCloud Buildעבודה ולשינוי או להתחייבות שהפעילו את ההשקה, וגם מידע בסיסי על המחבר, תאריך היצירה והסטטוס של ההשקה.
- הג'וב Cloud Build הוא סביבת build שבה App Hosting מריץ את פקודת ה-build של האפליקציה. כדי לגשת ליומנים של Cloud Build, לוחצים על מזהה ה-build.
- השינוי הוא הקומיט ב-GitHub או פעולה אחרת שהפעילה את ההשקה.
הפעלת השקה באופן ידני
אם רוצים להפעיל פריסה באופן ידני ממקור GitHub בלי לשלוח קומיט חדש, אפשר ליצור פריסה ממסוף Firebase או מ-CLI של Firebase. האפשרות הזו שימושית במקרים כמו:
- כפייה של יצירה מחדש של תוכן סטטי.
- מתן הרשאה למערכת CI/CD להפעיל השקות.
- הגבלת ההשקה של גרסאות ייצור לתאריכים או לשעות ספציפיים.
כדי להפעיל השקה במסוף Firebase:
- במסוף Firebase, עוברים אל Hosting & Serverless > App Hosting.
- לוחצים על תצוגה עבור הקצה העורפי שרוצים ליצור לו השקה.
- בסיכום של מרכז הבקרה של ה-Backend, לוחצים על יצירת השקה.
- בוחרים את הענף לפריסה.
- בוחרים את השליחה ל-deploy, או את השליחה האחרונה או שליחה קודמת שצוינה באמצעות מזהה השליחה שלה.
- לוחצים על יצירה. הסטטוס ומספר 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 שמונעת השקות חדשות. במקרים כאלה, אפשר לשחזר קובץ אימג' של קונטיינר קיים לפי בחירה מפריסה קודמת. התמונה הזו לא נבנית מחדש, אלא משתמשת בקוד ובהגדרות הסביבה מהפעם הראשונה שהיא נבנתה.
כדי ליצור חזרה מיידית לגרסה קודמת:
- במסוף Firebase, עוברים אל Hosting & Serverless > App Hosting.
- לוחצים על תצוגה עבור העורף שרוצים ליצור לו חזרה לגרסה קודמת.
- לוחצים על הכרטיסייה השקות.
- בטבלה History של ה-backend, בוחרים בתפריט שלוש הנקודות של גרסה קודמת.
- בוחרים באפשרות חזרה לגרסה הזו ומאשרים.
בנייה מחדש והחזרה לגרסה קודמת
אם רוצים לחזור לגרסה ישנה יותר של האפליקציה אבל עדיין לשמור על ההגדרה הנוכחית, אפשר לבנות מחדש את האפליקציה כחלק מתהליך החזרה לגרסה קודמת. לדוגמה, אם הגרסה האחרונה שלכם עדכנה ערך של מפתח API ב-Secret Manager, בנייה מחדש יכולה להבטיח שהמפתח החדש ישמש באפליקציה שלכם אחרי החזרה לגרסה הקודמת.
כדי לבנות מחדש ולחזור לגרסה הקודמת:
- במסוף Firebase, עוברים אל Hosting & Serverless > App Hosting.
- לוחצים על View dashboard (הצגת מרכז הבקרה) עבור ה-Backend שרוצים ליצור לו חזרה לגרסה קודמת.
- לוחצים על הכרטיסייה השקות.
- לוחצים על יצירת השקה.
- בתיבת הדו-שיח יצירת השקה, בוחרים באפשרות שליחה מוקדמת ומזינים את מזהה השליחה של הגרסה שרוצים לבנות מחדש ולחזור אליה. מזהה השמירה הוא חלק מ'פרטי השינוי' של כל השקה שמופיעה בהיסטוריית ההשקות,והוא מופיע בסוגריים בתווית.
- כדי להתחיל את ההחזרה לגרסה הקודמת, לוחצים על יצירה.
שינוי הגדרות ההשקה
אפשר לשנות את הענף הפעיל להשקות, ולהשבית או להפעיל השקות אוטומטיות באמצעות אמצעי הבקרה בתצוגה הגדרות > פריסה בלוח הבקרה של קצה העורף.
- במסוף Firebase, עוברים אל Hosting & Serverless > App Hosting.
- לוחצים על הצגה עבור הקצה העורפי שרוצים לעדכן את הגדרות ההשקה שלו.
- במרכז הבקרה של ה-backend, לוחצים על הגדרות. בתצוגת ברירת המחדל מוצג מידע על דומיינים ודומיינים מותאמים אישית.
- בוחרים בתצוגה פריסה. בתצוגה הזו אפשר לשנות את הענף הפעיל של הפריסה ולהשבית או להפעיל פריסות אוטומטיות. יש גם אפשרויות להגדיר את ספריית הבסיס של האפליקציה ואת הסביבה עבור ה-Backend (ראו פריסה למספר סביבות).
ניהול השקות אוטומטיות
כברירת מחדל, App Hosting מניח שרשימת הקבצים היא כל הקבצים, כלומר כל קובץ חדש שמועלה למאגר מפעיל בנייה ופריסה חדשות. עם זאת, כדי לחסוך זמן ולמנוע פריסות מיותרות, אפשר להגדיר את App Hosting כך שידלג על בנייה על סמך נתיבי הקבצים הספציפיים ששונו בהעברה.
אפשר להגדיר את זה בקטע הגדרות > השקות > טריגרים להשקה. כאן, אפשר להשאיר את Required Paths ריק אם רוצים שכל קומיט חדש במאגר יפעיל בנייה והשקה חדשות, או שאפשר לציין בדיוק אילו ספריות או קבצים תמיד צריכים להפעיל השקה. אם מציינים ספריות, חשוב להוסיף את כל הנתיבים שבהם שינויים צריכים להפעיל השקה.
ספריות או קבצים שמוסיפים לנתיבים מוחרגים לא יפעילו אף פעם פריסה אוטומטית. במקרים שבהם ספריית משנה נכללת גם ברשימת החובה וגם ברשימת ההתעלמות, לא יופעל השקה אוטומטית. אם תמלאו רק את רשימת הנתיבים להתעלמות, המערכת תמלא אוטומטית את הנתיבים הנדרשים בערך App Hosting.
אם דוחפים קומיט שבו אף אחד מהקבצים ששונו לא תואם לנתיבים הנדרשים (או אם כל השינויים מוחרגים באופן מפורש על ידי הנתיבים שהוגדרו להתעלמות), App Hosting עדיין יאשר את קבלת האירוע ב-GitHub, אבל הוא יסמן את מצבי הבנייה וההשקה כSKIPPED, ולא תופעל השקה אוטומטית.