פריסה בשידור חי & תצוגה מקדימה של ערוצים באמצעות בקשות משיכה ב-GitHub

אפשר לשלב פריסות ל-Firebase Hosting באמצעות GitHub Action. אלה הפעולות שאפשר לבצע באמצעות פעולת GitHub הזו:

  • יוצר ערוץ תצוגה מקדימה חדש (ואת כתובת ה-URL המשויכת לתצוגה המקדימה) לכל בקשת משיכה במאגר GitHub שלכם.

  • הפעולה מוסיפה הערה לבקשת המיזוג עם כתובת ה-URL של התצוגה המקדימה, כך שאתם וכל בודק יכולים לראות ולבדוק את השינויים בבקשת המיזוג בגרסת 'תצוגה מקדימה' של האפליקציה.

    תמונה של תגובה ב-PR של GitHub Action עם כתובת URL לתצוגה מקדימה

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

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

תזכורת: כשמשתמשים בכתובות URL לתצוגה מקדימה, האפליקציה מקיימת אינטראקציה עם משאבי ה-Backend האמיתיים של פרויקט Firebase.

הגדרת פעולת GitHub לפריסה ב-Firebase Hosting

  1. יוצרים מאגר GitHub (ציבורי או פרטי) או משתמשים במאגר קיים. צריכות להיות לכם הרשאות אדמין במאגר.

  2. בגרסה מקומית של המאגר, מגדירים את Firebase Hosting באמצעות הפקודה firebase init.

    • אם לא הגדרתם את Hosting, מריצים את הגרסה הזו של הפקודה מהספרייה הראשית המקומית:

      firebase init hosting
    • אם כבר הגדרתם את Hosting, אתם צריכים להגדיר רק את החלק של GitHub Action ב-Hosting. מריצים את הגרסה הזו של הפקודה מהרמה הבסיסית (root) של הספרייה המקומית:

      firebase init hosting:github
  3. פועלים לפי ההנחיות ב-CLI, והפקודה תדאג באופן אוטומטי להגדרת GitHub Action:

    • יוצר חשבון שירות בפרויקט Firebase עם הרשאה לפריסה אל Firebase Hosting.

    • מצפין את מפתח ה-JSON של חשבון השירות ומעלה אותו למאגר GitHub שצוין כסוד של GitHub.

    • כותב קובצי הגדרות של תהליך עבודה ב-GitHub‏ yaml שמפנים לסוד שנוצר. הקובץ הזה מגדיר את פעולת GitHub לפריסה אל Firebase Hosting.

  4. ב-GitHub, יוצרים הסתעפות חדשה ומבצעים commit של קובצי תהליך העבודה yaml שנוצרו על ידי ה-CLI.

  5. מפרסמים את ההסתעפות במאגר שלכם ב-GitHub.

  6. ממזגים את הענף.

זהו זה! כל בקשת משיכה (PR) שתוגש בהמשך במאגר הזה ב-GitHub תקבל באופן אוטומטי כתובת URL משלה לתצוגה מקדימה.

מידע נוסף על GitHub Action