ניהול השקות וגרסאות

אם הפעלתם פריסה אוטומטית, בכל פעם שתדחפו קומיט חדש לענף הפעיל במאגר 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, לוחצים על מזהה הגרסה.
  • השינוי הוא הקומיט ב-GitHub או פעולה אחרת שהפעילה את ההשקה.

הפעלת השקה באופן ידני

אם רוצים להפעיל פריסה באופן ידני ממקור GitHub בלי לשלוח קומיט חדש, אפשר ליצור פריסה ממסוף Firebase או מ-CLI של Firebase. האפשרות הזו שימושית במקרים כמו:

  • כפייה של יצירה מחדש של תוכן סטטי.
  • מתן הרשאה למערכת CI/CD להפעיל השקות.
  • הגבלת השקת גרסאות ייצור לתאריכים או לשעות ספציפיים.

כדי להפעיל השקה במסוף Firebase:

  1. במסוף Firebase, עוברים אל Hosting & Serverless >‏ App Hosting.
  2. לוחצים על View (תצוגה) עבור ה-backend שרוצים ליצור לו השקה.
  3. בסיכום של מרכז הבקרה של ה-Backend, בוחרים באפשרות יצירת השקה.
  4. בוחרים את הענף לפריסה.
  5. בוחרים את הקומיט לפריסה, או את הקומיט האחרון או קומיט קודם שצוין על ידי מזהה הקומיט שלו.
  6. לוחצים על יצירה. בטבלה של היסטוריית ההשקה מוצגים הסטטוס ומספר 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 מציעה שתי אפשרויות לשחזור פריסה קודמת:

  • חזרה מיידית לגרסה הקודמת בלי לבנות מחדש
  • איך לבנות מחדש ולחזור לגרסה קודמת

יצירת חזרה מיידית לגרסה קודמת

לפעמים צריך לחזור במהירות לגרסה ישנה יותר של האפליקציה – למשל, אם גיליתם באג קריטי בהשקה חדשה או אם אתם נתקלים בבעיה בגרסה שמונעת השקות חדשות. במקרים כאלה, אפשר לשחזר קובץ אימג' של קונטיינר קיים לפי בחירתכם מפריסה קודמת. התמונה הזו לא נבנית מחדש, אלא משתמשת בקוד ובהגדרות הסביבה מהפעם הראשונה שהיא נבנתה.

כדי ליצור חזרה מיידית לגרסה קודמת:

  1. במסוף Firebase, עוברים אל Hosting & Serverless >‏ App Hosting.
  2. לוחצים על תצוגה עבור העורף שרוצים ליצור לו חזרה לגרסה קודמת.
  3. לוחצים על הכרטיסייה השקות.
  4. בטבלה History של ה-Backend, בוחרים בתפריט שלוש הנקודות של גרסה קודמת.
  5. בוחרים באפשרות חזרה לגרסה הזו ומאשרים.

שיקום והחזרה למצב קודם

אם רוצים לחזור לגרסה ישנה יותר של האפליקציה אבל עדיין לשמור על ההגדרות הנוכחיות, אפשר לבנות מחדש את האפליקציה כחלק מתהליך החזרה לגרסה קודמת. לדוגמה, אם בגרסה האחרונה שלכם עודכן ערך של מפתח API ב-Secret Manager, בנייה מחדש יכולה להבטיח שהמפתח החדש ישמש באפליקציה אחרי החזרה לגרסה הקודמת.

כדי לבנות מחדש ולחזור לגרסה הקודמת:

  1. במסוף Firebase, עוברים אל Hosting & Serverless >‏ App Hosting.
  2. לוחצים על View dashboard (הצגת מרכז הבקרה) עבור הקצה העורפי שרוצים ליצור עבורו חזרה לגרסה קודמת.
  3. לוחצים על הכרטיסייה השקות.
  4. לוחצים על יצירת השקה.
  5. בתיבת הדו-שיח יצירת השקה, בוחרים באפשרות שליחה קודמת ומזינים את מזהה השליחה של הגרסה שרוצים לבנות מחדש ולחזור אליה. מזהה השליחה הוא חלק מ'פרטי השינוי' של כל השקה שמופיעה בהיסטוריית ההשקות,והוא מופיע בסוגריים בתווית.
  6. לוחצים על יצירה כדי להתחיל את ההחזרה לגרסה הקודמת.

שינוי הגדרות ההשקה

אפשר לשנות את הענף הפעיל להשקות, ולהשבית או להפעיל השקות אוטומטיות באמצעות אמצעי הבקרה בתצוגה הגדרות > פריסה בלוח הבקרה של קצה העורפי.

  1. במסוף Firebase, עוברים אל Hosting & Serverless >‏ App Hosting.
  2. לוחצים על תצוגה עבור הקצה העורפי שרוצים לעדכן את הגדרות ההשקה שלו.
  3. במרכז הבקרה של ה-Backend, בוחרים באפשרות הגדרות. בתצוגת ברירת המחדל מוצג מידע על דומיינים ועל דומיינים מותאמים אישית.
  4. בוחרים בתצוגה פריסה. בתצוגה הזו אפשר לשנות את הענף הפעיל להפצה, ולהשבית או להפעיל הפצות אוטומטיות. יש גם אפשרויות להגדיר את ספריית הבסיס של האפליקציה ואת הסביבה עבור ה-Backend (ראו פריסה למספר סביבות).

ניהול השקות אוטומטיות

כברירת מחדל, App Hosting מניח שרשימת הקבצים נדרשת, כלומר כל קובץ חדש שמועבר למאגר מפעיל בנייה ופריסה חדשות. עם זאת, כדי לחסוך זמן ולמנוע פריסות מיותרות, אפשר להגדיר את App Hosting כך שידלג על בנייה על סמך נתיבי הקבצים הספציפיים ששונו בהתחייבות.

אפשר להגדיר את זה בקטע הגדרות > השקות > טריגרים להשקה. כאן, אם רוצים שכל קובץ חדש שיועבר למאגר יפעיל בנייה והשקה חדשות, אפשר להשאיר את השדה Required Paths ריק. לחלופין, אפשר לציין בדיוק אילו ספריות או קבצים תמיד צריכים להפעיל השקה. אם מציינים ספריות, חשוב להוסיף את כל הנתיבים שבהם שינויים צריכים להפעיל השקה.

ספריות או קבצים שמוסיפים לנתיבים שהמערכת מתעלמת מהם לעולם לא יפעילו פריסה אוטומטית. במקרים שבהם ספריית משנה נכללת גם ברשימת החובה וגם ברשימת ההתעלמות, לא יופעל עדכון אוטומטי. אם תמלאו רק את רשימת הנתיבים להתעלמות, App Hosting ימלא אוטומטית את הנתיבים הנדרשים בסימן '*'.

צילום מסך של ממשק המשתמש שמתואר בדף הזה.

אם דוחפים קומיט שבו אף אחד מהקבצים שהשתנו לא תואם לנתיבים הנדרשים (או אם כל השינויים מוחרגים באופן מפורש על ידי הנתיבים שהוגדרו להתעלמות), App Hosting עדיין יאשר את קבלת האירוע ב-GitHub, אבל הוא יסמן את מצבי ה-build וההפצה כ-SKIPPED, ולא תופעל הפצה אוטומטית.