פריסה ב-Firebase

בדף הזה מוסבר איך לפרוס אפליקציות ל-Firebase באמצעות Cloud Build. אם אתם חדשים ב-Cloud Build, כדאי קודם לקרוא את המדריכים למתחילים ואת הסקירה הכללית על הגדרת Build.

לפני שמתחילים

  • מפעילים את Cloud Build API,‏ Firebase API ו-Resource Manager API.

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאה serviceusage.services.enable. איך מקצים תפקידים

    הפעלת ממשקי ה-API

  • כדי להריץ את הפקודות gcloud שבדף הזה, צריך להתקין את Google Cloud CLI.

  • חשוב לשמור את קוד המקור של האפליקציה, כולל firebase.json, בהישג יד. קוד המקור צריך להיות מאוחסן במאגר, כמו Cloud Source Repositories,‏ GitHub או Bitbucket.

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

הרשאות IAM נדרשות

  1. במסוף Google Cloud , נכנסים לדף Cloud Build Permissions:

    עוברים אל הרשאות

  2. בוחרים את חשבון השירות לבנייה.

  3. מגדירים את הסטטוס של התפקידים הבאים למופעל:

    • חשבון השירות של Cloud Build | מאפשר לחשבון השירות מדור קודם של Cloud Build לעדכן גרסאות build, לכתוב יומנים של גרסאות build ולאחסן ארטיפקטים של גרסאות build.
    • Firebase Admin | מאפשר ל-Cloud Build לגשת ל-Firebase.
    • API Keys Viewer | מאפשר ל-Cloud Build לגשת להגדרות הנוכחיות של Firebase Hosting במהלך פריסת ה-build.

שימוש בקובץ אימג' של Docker‏ firebase

‫Cloud Build מספק קובץ אימג' של builder שאפשר להשתמש בו כדי להפעיל פקודות firebase ב-Cloud Build. כדי להשתמש בבונה הזה בקובץ הגדרות של Cloud Build, אפשר להשתמש בשלב ה-build‏ firebase כדי לבצע פריסה ב-Firebase:

  1. יוצרים קובץ הגדרות build בשם cloudbuild.yaml או cloudbuild.json, כאשר PROJECT_ID הוא מזהה הפרויקט שלכם ו-FIREBASE_PROJECT_ID הוא מזהה הפרויקט שלכם ב-Firebase:Google Cloud

    YAML

    steps:
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase"
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    ## Or, target a specific version of firebase-tools
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "FIREBASE_PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    

    אפשר לבחור גרסה ספציפית של firebase-tools באמצעות
    name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z

  2. מריצים את ה-build באמצעות קובץ התצורה של ה-build:

    gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
    

    כאשר:

    • REGION הוא אחד מאזורי הבנייה הנתמכים.
    • CONFIG_FILE_PATH הוא הנתיב לקובץ התצורה של ה-build.
    • SOURCE_DIRECTORY הוא הנתיב או כתובת ה-URL של קוד המקור.

פריסה רציפה

אתם יכולים ליצור טריגרים של Cloud Build כדי להפוך את הפריסה של התוכנה שלכם ב-Firebase לאוטומטית. אתם יכולים להגדיר טריגרים כדי לבצע build ולפרוס תמונות בכל פעם שאתם מעדכנים את קוד המקור.

כדי להפוך את הפריסה ל-Firebase לאוטומטית:

  1. מאחסנים במאגר קובץ הגדרות build עם שלבים להפעלת הפקודה firebase deploy, כאשר PROJECT_ID הוא מזהה הפרויקט Google Cloud :

    YAML

    steps:
          - name: us-docker.pkg.dev/firebase-cli/us/firebase
            args: ['deploy', '--project=PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. יוצרים טריגר עם קובץ תצורת ה-build שנוצר בשלב הקודם:

    1. פותחים את הדף Triggers במסוף Google Cloud :

      פתיחת הדף Triggers

    2. בוחרים את הפרויקט מהתפריט הנפתח לבחירת פרויקט בחלק העליון של הדף.

    3. לוחצים על פתיחה.

    4. לוחצים על Create trigger (יצירת ביטוי להפעלה).

      בדף Create trigger, מזינים את ההגדרות הבאות:

      1. מזינים שם לטריגר.

      2. בוחרים את אירוע המאגר כדי להפעיל את הטריגר.

      3. בוחרים את המאגר שמכיל את קובץ ההגדרות של קוד המקור וה-build.

      4. מציינים את הביטוי הרגולרי לשם הענף או התג שיפעיל את הטריגר.

      5. Configuration: בוחרים את קובץ הגדרות ה-build שיצרתם קודם.

    5. לוחצים על יצירה כדי לשמור את טריגר לפיתוח גרסת Build.

בכל פעם שתדחפו קוד חדש למאגר, תתחילו באופן אוטומטי גרסת build ופריסה ב-Firebase.

מידע נוסף על יצירת טריגרים של Cloud Build זמין במאמר בנושא יצירה וניהול של טריגרים של Build.

קוד לדוגמה

כדי לראות קוד לדוגמה לפריסה ב-Firebase באמצעות Cloud Build, עוברים אל deploy-firebase-example.

המאמרים הבאים