ניהול שידורים חיים & תצוגה מקדימה של ערוצים, גרסאות וגרסאות של האתר

ב-Firebase Hosting אפשר לקבל כלים גם דרך מסוף Firebase וגם CLI של Firebase לניהול הערוצים, הגרסאות והגרסאות של באתר Hosting.

סקירה כללית של התשתית של Hosting

אם מבינים את התשתית של Hosting אפשר להבין אפשרויות הניהול שמתוארות בדף הזה.

לכל פרויקט Firebase יש אתר Hosting שמוגדר כברירת מחדל, עם גישה לכל משאבי הפרויקט (מסדי נתונים, אימות, פונקציות וכו'). אתר מכיל ערוץ אחד או יותר, שבהם כל ערוץ משויך לכתובת URL. שמציג תוכן ספציפי ותצורה של Hosting.

תמונה של <span class=היררכיית האירוח ב-Firebase" />

לכל אתר Hosting יש ערוץ 'פעיל' שמוצג בו תוכן והגדרת Hosting ב-(1) תתי-הדומיינים של האתר שהוקצו על ידי Firebase (SITE_ID.web.app ו-SITE_ID.firebaseapp.com) וב-(2) כל דומיין מותאם אישית שמחובר. אפשר גם ליצור 'ערוצי תצוגה מקדימה' שמוצג בהם תוכן והגדרות משלהם בכתובות URL זמניות שניתן לשתף (SITE_ID--CHANNEL_ID-RANDOM_HASH.web.app).

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

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

ניהול ההגדרות של הערוץ

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

הגבלת מספר פריטי התוכן לשמירה

בכל פעם שפורסים בערוץ (ויוצרים גרסה), Hosting שומר את גרסה שמשויכת לגרסה הקודמת בHosting של הפרויקט אחסון. אפשר להגדיר את מספר פריטי התוכן שיישמרו בכל ערוץ בקטע בפרויקט, גם בערוצים בשידור חי וגם בערוצים של תצוגה מקדימה.

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

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

  • מה קורה כשמגבילים את פריטי התוכן?
    כשמגדירים מגבלת שמירה של פריטי תוכן, התוכן של כל פריט תוכן שמשך הזמן עבר שהמגבלה שהגדרתם מתוזמנת למחיקה, החל מהגרסאות הישנות ביותר תחילה.

כך מגדירים את מגבלת האחסון של פריטי התוכן בערוץ:

  1. ב מסוף Firebase, גישה לתיבת הדו-שיח להגדרת נפח האחסון של הגרסה:

    • בערוץ בשידור חי
      בטבלה Release History של האתר, לוחצים על ואז על Release storage settings.

    • בכל ערוץ תצוגה מקדימה
      בשורה של ערוץ התצוגה המקדימה, לוחצים על ואז בוחרים באפשרות הגדרות הערוץ.

  2. מזינים את מספר פריטי התוכן שרוצים לשמור ולוחצים על שמירה.

הגדרת תאריך התפוגה של ערוץ תצוגה מקדימה

כברירת מחדל, התוקף של ערוץ תצוגה מקדימה פג 7 ימים מתאריך היצירה שלו, אבל הערוץ בשידור חי של האתר לא יחלוף.

כשערוץ תצוגה מקדימה יפוג, גם הערוץ, יחד עם הגרסאות שלו, גרסאות משויכות שמתוזמנו למחיקה תוך 24 שעות. גם כתובת ה-URL של התצוגה המקדימה המשויכת תושבת. יוצא מן הכלל מחיקת גרסה היא אם גרסה משויכת לגרסה אחרת ( יכול לקרות, לדוגמה, אם משכפלים גרסה מערוץ אחד לאחר. באותו אתר).

ב-Hosting יש שתי דרכים שונות לשלוט בפקיעת התוקף של ערוץ:

  • מסוף Firebase
    בשורה של ערוץ התצוגה המקדימה, לוחצים על , ואז בוחרים הגדרות ערוץ. מזינים את התאריך והשעה לתאריך התפוגה.

  • CLI של Firebase
    כשפורסים לערוץ התצוגה המקדימה, מעבירים את דגל --expires DURATION, לדוגמה:

    firebase hosting:channel:deploy new-awesome-feature --expires 7d

    התוקף יכול להיות עד 30 יום ממועד הפריסה. שימוש ב-h בשביל שעות, d לימים ו-w לשבועות (לדוגמה, 12h, 7d, 2w, בהתאמה).

שכפול גרסה מערוץ אחד לערוץ אחר

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

פקודת השכפול נפרסת גם ב-"target" הערוץ המשוכפל התוכן וההגדרות של Hosting מוצגים באופן אוטומטי ביעד 'target' כתובת ה-URL המשויכת לערוץ.

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

  • שכפול מבקרת איכות ערוץ תצוגה מקדימה לערוץ השידור החי של האתר (התחלת סטרימינג בשידור חי!)

  • שכפול מהערוץ בשידור חי של האתר ל'ניפוי באגים' תצוגה מקדימה של הערוץ (לייק לפני החזרה למצב הקודם)

  • שכפול מערוץ ב'סביבת ה-staging' פרויקט Firebase לערוץ תצוגה מקדימה ב'מוצר' פרויקט Firebase

כדי לשכפל גרסה, מריצים את הפקודה הבאה מכל ספרייה:

firebase hosting:clone SOURCE_SITE_ID:SOURCE_CHANNEL_ID TARGET_SITE_ID:TARGET_CHANNEL_ID

מחליפים כל placeholder בערך הבא:

  • SOURCE_SITE_ID ו-TARGET_SITE_ID: אלה המזהים של Hosting האתרים שמכילים את הערוצים.

    • באתר Hosting שמוגדר כברירת מחדל, צריך להשתמש במזהה הפרויקט ב-Firebase.
    • אפשר לציין Hosting אתרים שנמצאים באותו פרויקט Firebase או גם בפרויקטים שונים של Firebase.
  • SOURCE_CHANNEL_ID ו-TARGET_CHANNEL_ID: אלה המזהים של הערוצים.

    • בערוץ בשידור חי, מזהה הערוץ הוא live.
    • אם הפרמטר target (יעד) צוין הערוץ עדיין לא קיים, הפקודה הזו יוצרת את הערוץ לפני הפריסה אליו.

חזרה לגרסה קודמת של האתר

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

אם חוזרים אחורה, יוצרים גרסה חדשה עם אותה גרסה של תוכן כמו גרסה קודמת. בטבלה היסטוריית הגרסאות, שתי הגרסאות יציג את אותו מזהה גרסה.

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

  1. ב מסוף Firebase, בטבלה היסטוריית גרסאות של האתר שלכם, מעבירים את העכבר מעל פריט תוכן שרוצים לחזור אליו אחורה.

  2. לוחצים על ובוחרים חזרה אחורה.

מחיקה ידנית של גרסה

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

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

כך מוחקים גרסה:

  1. ב מסוף Firebase, בטבלה היסטוריית גרסאות של האתר שלכם, מעבירים את העכבר מעל גרסה חדשה שרוצים למחוק.

  2. לוחצים על ובוחרים מחיקה.

מחיקת קבצים באופן ידני

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

מחיקה ידנית של תצוגה מקדימה של ערוץ

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

כשמוחקים ערוץ תצוגה מקדימה, את הערוץ, את הגרסאות שלו גרסאות משויכות שמתוזמנו למחיקה תוך 24 שעות. גם כתובת ה-URL של התצוגה המקדימה המשויכת תושבת. חריג מחיקת גרסה היא אם גרסה משויכת לגרסה אחרת ( יכול לקרות, לדוגמה, אם משכפלים גרסה מערוץ אחד לאחר. באותו אתר).

ב-Hosting יש שתי דרכים שונות למחוק ערוץ לתצוגה מקדימה:

  • מסוף Firebase
    בשורה של ערוץ התצוגה המקדימה, לוחצים על , ואז בוחרים מחיקת הערוץ. אשר את המחיקה.

  • CLI של Firebase
    מריצים את הפקודה הבאה מכל ספרייה:

    firebase hosting:channel:delete CHANNEL_ID

פקודות CLI לתצוגה מקדימה של ערוצים ושכפול

פקודות לתצוגה מקדימה של ערוצים

כל הפקודות של ערוצי תצוגה מקדימה תומכות בפריסה של יעדים אם מספר אתרים של Hosting.

פקודה תיאור
firebase hosting:channel:create CHANNEL_ID

ייצור ערוץ תצוגה מקדימה חדש ב- ברירת המחדל של האתר Hosting באמצעות המאפיינים שצוינו CHANNEL_ID

הפקודה הזו לא נפרסת בערוץ.

firebase hosting:channel:delete CHANNEL_ID

מחיקת הערוץ לתצוגה המקדימה שצוין

לא ניתן למחוק ערוץ בשידור חי של אתר.

firebase hosting:channel:deploy CHANNEL_ID

פריסת התוכן וההגדרות של Hosting לפי ההגדרות שצוינו תצוגה מקדימה של הערוץ

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

firebase hosting:channel:list רשימה של כל הערוצים (כולל הערוץ 'שידור חי') באתר Hosting שמוגדר כברירת מחדל
firebase hosting:channel:open CHANNEL_ID הפונקציה פותחת דפדפן עם כתובת ה-URL של הערוץ שצוין, או מחזירה את כתובת ה-URL אם אי אפשר לפתוח אותה בדפדפן

פקודות לשכפול גרסאות

פקודה תיאור
firebase hosting:clone \
SOURCE_SITE_ID:SOURCE_CHANNEL_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

הכלי מעתיק את הגרסה האחרונה שפרסמתם בערוץ 'המקור' לערוץ 'היעד' שציינתם

הפקודה הזו גם נפרסת ב-"target" שצוין . אם הערוץ 'target' עדיין לא קיים, הפקודה הזו תיצור ערוץ תצוגה מקדימה חדש באתר Hosting של היעד לפני הפריסה בערוץ.

firebase hosting:clone \
SOURCE_SITE_ID:@VERSION_ID \
TARGET_SITE_ID:TARGET_CHANNEL_ID

הכלי יוצר עותק (clone) של הגרסה שצוינה בערוץ 'target' שצוין

הפקודה הזו גם נפרסת ב-"target" שצוין . אם "target" הערוץ עדיין לא קיים, הפקודה הזו יוצרת קובץ חדש תצוגה מקדימה של הערוץ ב"יעד" אתר אחד (Hosting) לפני פריסה אל את הערוץ.

אפשר למצוא את VERSION_ID במרכז הבקרה Hosting במסוף Firebase.