Firebase CLI (GitHub) מספק מגוון כלים לניהול, לצפייה ולפריסה בפרויקטים של Firebase.
לפני שמשתמשים ב-CLI של Firebase, צריך להגדיר פרויקט Firebase.
הגדרה או עדכון של ה-CLI
התקנת Firebase CLI
אפשר להתקין את Firebase CLI באמצעות שיטה שמתאימה למערכת ההפעלה, לרמת הניסיון או לתרחיש השימוש שלכם. לא משנה איך מתקינים את ה-CLI, יש גישה לאותה פונקציונליות ולפקודה firebase.
Windows
אפשר להתקין את Firebase CLI ל-Windows באחת מהדרכים הבאות:
| אפשרות | תיאור | מומלץ ל... |
|---|---|---|
| קובץ בינארי עצמאי | מורידים את הקובץ הבינארי העצמאי של ה-CLI. אחר כך תוכלו לגשת לקובץ ההפעלה כדי לפתוח מעטפת שבה תוכלו להריץ את הפקודה firebase.
|
מפתחים חדשים מפתחים שלא משתמשים ב-Node.js או שלא מכירים את הפלטפורמה |
| npm | משתמשים ב-npm (מנהל החבילות של Node) כדי להתקין את ה-CLI ולהפעיל את הפקודה firebase שזמינה באופן גלובלי.
|
מפתחים שמשתמשים ב-Node.js |
קובץ בינארי עצמאי
כדי להוריד ולהפעיל את הקובץ הבינארי של Firebase CLI, פועלים לפי השלבים הבאים:
מורידים את הקובץ הבינארי של Firebase CLI ל-Windows.
ניגשים לקובץ הבינארי כדי לפתוח מעטפת שאפשר להריץ בה את הפקודה
firebase.ממשיכים להתחבר ולבדוק את ה-CLI.
npm
כדי להשתמש ב-npm (מנהל חבילות Node) כדי להתקין את Firebase CLI, פועלים לפי השלבים הבאים:
מתקינים את Node.js באמצעות nvm-windows (Node Version Manager). התקנה של Node.js מתקינה באופן אוטומטי את כלי הפקודה
npm.מתקינים את Firebase CLI באמצעות
npmעל ידי הרצת הפקודה הבאה:npm install -g firebase-tools
הפקודה הזו מפעילה את הפקודה
firebaseשזמינה בכל העולם.ממשיכים להתחבר ולבדוק את ה-CLI.
macOS או Linux
אפשר להתקין את Firebase CLI ב-macOS או ב-Linux באמצעות אחת מהאפשרויות הבאות:
| אפשרות | תיאור | מומלץ ל... |
|---|---|---|
| סקריפט התקנה אוטומטי | מריצים פקודה אחת שמזהה באופן אוטומטי את מערכת ההפעלה, מורידה את הגרסה האחרונה של ה-CLI ואז מפעילה את הפקודה firebase שזמינה באופן גלובלי.
|
מפתחים חדשים מפתחים שלא משתמשים ב-Node.js או שלא מכירים אותו פריסות אוטומטיות בסביבת CI/CD |
| קובץ בינארי עצמאי | מורידים את הקובץ הבינארי העצמאי של ה-CLI. לאחר מכן תוכלו להגדיר את הקובץ הבינארי ולהריץ אותו בהתאם לתהליך העבודה שלכם. | תהליכי עבודה שניתנים להתאמה אישית מלאה באמצעות ה-CLI |
| npm | משתמשים ב-npm (מנהל החבילות של Node) כדי להתקין את ה-CLI ולהפעיל את הפקודה firebase שזמינה באופן גלובלי.
|
מפתחים שמשתמשים ב-Node.js |
סקריפט להתקנה אוטומטית
כדי להתקין את Firebase CLI באמצעות סקריפט ההתקנה האוטומטי, מבצעים את השלבים הבאים:
מריצים את פקודת ה-cURL הבאה:
curl -sL https://firebase.tools | bash
הסקריפט הזה מזהה באופן אוטומטי את מערכת ההפעלה שלכם, מוריד את הגרסה האחרונה של Firebase CLI, ואז מפעיל את הפקודה
firebaseשזמינה בכל העולם.ממשיכים להתחבר ולבדוק את ה-CLI.
דוגמאות נוספות ופרטים על סקריפט ההתקנה האוטומטית זמינים בקוד המקור של הסקריפט בכתובת firebase.tools.
קובץ בינארי עצמאי
כדי להוריד ולהפעיל את הקובץ הבינארי של ה-CLI של Firebase שמתאים למערכת ההפעלה שלכם, מבצעים את השלבים הבאים:
מורידים את הקובץ הבינארי של Firebase CLI למערכת ההפעלה: macOS | Linux
(אופציונלי) מגדירים את הפקודה
firebaseשזמינה בכל העולם.- מריצים את הפקודה
chmod +x ./firebase_toolsכדי להפוך את הקובץ הבינארי לקובץ הפעלה. - מוסיפים את הנתיב של הקובץ הבינארי ל-PATH.
- מריצים את הפקודה
ממשיכים להתחבר ולבדוק את ה-CLI.
npm
כדי להשתמש ב-npm (מנהל חבילות Node) כדי להתקין את CLI של Firebase, צריך לבצע את השלבים הבאים:
מתקינים את Node.js באמצעות nvm (Node Version Manager).
כשמתקינים את Node.js, כלי הפקודותnpmמותקנים באופן אוטומטי.מתקינים את Firebase CLI באמצעות
npmעל ידי הרצת הפקודה הבאה:npm install -g firebase-tools
הפקודה הזו מפעילה את הפקודה
firebaseשזמינה בכל העולם.ממשיכים להתחבר ולבדוק את ה-CLI.
התחברות ובדיקה של ה-CLI של Firebase
אחרי שמתקינים את ה-CLI, צריך לבצע אימות. אחר כך אפשר לאמת את האימות על ידי הצגת רשימה של הפרויקטים ב-Firebase.
מתחברים ל-Firebase באמצעות חשבון Google על ידי הפעלת הפקודה הבאה:
firebase login
הפקודה הזו מחברת את המחשב המקומי ל-Firebase ומעניקה לכם גישה לפרויקטים שלכם ב-Firebase.
כדי לבדוק שה-CLI מותקן בצורה תקינה ושיש לו גישה לחשבון, מריצים את הפקודה לרישום הפרויקטים ב-Firebase. מריצים את הפקודה הבאה:
firebase projects:list
הרשימה שמוצגת צריכה להיות זהה לרשימת הפרויקטים ב-Firebase שמופיעה במסוף Firebase.
עדכון לגרסה האחרונה של CLI
בדרך כלל, מומלץ להשתמש בגרסה העדכנית ביותר של Firebase CLI.
הדרך לעדכן את גרסת ה-CLI תלויה במערכת ההפעלה ובאופן ההתקנה של ה-CLI.
Windows
- קובץ בינארי עצמאי: מורידים את הגרסה החדשה ואז מחליפים אותה במערכת.
- npm: מריצים את הפקודה
npm install -g firebase-tools
macOS
סקריפט התקנה אוטומטי: מריצים את
curl -sL https://firebase.tools | upgrade=true bashקובץ בינארי עצמאי: מורידים את הגרסה החדשה ואז מחליפים אותה במערכת.
npm: מריצים את הפקודה
npm install -g firebase-tools
Linux
סקריפט התקנה אוטומטי: מריצים את
curl -sL https://firebase.tools | upgrade=true bashקובץ בינארי עצמאי: מורידים את הגרסה החדשה ואז מחליפים אותה במערכת.
npm: מריצים את הפקודה
npm install -g firebase-tools
הסרת Firebase CLI
הדרך להסרת ה-CLI תלויה במערכת ההפעלה ובאופן ההתקנה של ה-CLI.
Windows
- קובץ בינארי עצמאי: מוחקים את הקובץ הבינארי
firebase.exeשהורדתם. - npm: מריצים את הפקודה
npm uninstall -g firebase-tools
macOS
סקריפט התקנה אוטומטי: הרצה
curl -sL https://firebase.tools | uninstall=true bashקובץ בינארי עצמאי: מוחקים את הקובץ הבינארי
firebaseשהורדתם. אם הוספתם את המיקום שלו למשתנה הסביבהPATH, הקפידו להסיר אותו.npm: מריצים את הפקודה
npm uninstall -g firebase-tools
Linux
סקריפט התקנה אוטומטי: הרצה
curl -sL https://firebase.tools | uninstall=true bashקובץ בינארי עצמאי: מוחקים את הקובץ הבינארי
firebaseשהורדתם. אם הוספתם את המיקום שלו למשתנה הסביבהPATH, הקפידו להסיר אותו.npm: מריצים את הפקודה
npm uninstall -g firebase-tools
שימוש ב-CLI עם מערכות CI
מומלץ לבצע אימות באמצעות Application Default Credentials כשמשתמשים ב-CLI עם מערכות CI.
(מומלץ) שימוש ב-Application Default Credentials
Firebase CLI יזהה את פרטי הכניסה ב-Application Default Credentials וישתמש בהם אם הם מוגדרים. הדרך הכי פשוטה לאמת את ה-CLI ב-CI ובסביבות אחרות ללא ממשק משתמש היא להגדיר את פרטי הכניסה ב-Application Default Credentials.
(גרסה קודמת) אפשר להשתמש ב-FIREBASE_TOKEN
לחלופין, אפשר לבצע אימות באמצעות FIREBASE_TOKEN. השיטה הזו פחות מאובטחת מ-Application Default Credentials, וכבר לא מומלצת.
במכונה עם דפדפן, מתקינים את Firebase CLI.
כדי להתחיל את תהליך הכניסה, מריצים את הפקודה הבאה:
firebase login:ci
נכנסים לכתובת ה-URL שסופקה, ואז מתחברים באמצעות חשבון Google.
הדפסה של טוקן רענון חדש. הסשן הנוכחי של CLI לא יושפע.
מאחסנים את אסימון הפלט בצורה מאובטחת אבל נגישה במערכת ה-CI.
משתמשים באסימון הזה כשמריצים פקודות
firebase. אפשר להשתמש באחת משתי האפשרויות הבאות:אפשרות 1: אחסון הטוקן כמשתנה הסביבה
FIREBASE_TOKEN. המערכת תשתמש בטוקן באופן אוטומטי.אפשרות 2: מריצים את כל הפקודות של
firebaseעם הדגל--token TOKENבמערכת ה-CI.
זהו סדר העדיפות לטעינת טוקנים: דגל, משתנה סביבתי, פרויקט Firebase רצוי.
הפעלת פרויקט Firebase
הרבה משימות נפוצות שמבצעים באמצעות ה-CLI, כמו פריסה לפרויקט Firebase, דורשות ספריית פרויקט. יוצרים ספריית פרויקט באמצעות הפקודה firebase init. תיקיית הפרויקט היא בדרך כלל אותה תיקייה כמו השורש של בקרת המקור, ואחרי שמריצים את firebase init, התיקייה מכילה קובץ הגדרות של firebase.json.
כדי לאתחל פרויקט חדש ב-Firebase, מריצים את הפקודה הבאה מתוך ספריית האפליקציה:
firebase init
הפקודה firebase init מנחה אתכם בהגדרת ספריית הפרויקט וכמה מוצרים של Firebase. במהלך אתחול הפרויקט, ממשק Firebase CLI מבקש מכם לבצע את המשימות הבאות:
בוחרים פרויקט ברירת מחדל ב-Firebase.
בשלב הזה משייכים את ספריית הפרויקט הנוכחית לפרויקט Firebase, כדי שפקודות ספציפיות לפרויקט (כמו
firebase deploy) יפעלו מול פרויקט Firebase המתאים.אפשר גם לשייך כמה פרויקטים ב-Firebase (למשל פרויקט Staging ופרויקט Production) לאותה תיקיית פרויקט.
בוחרים את מוצרי Firebase שרוצים להגדיר בפרויקט Firebase.
בשלב הזה תתבקשו להגדיר קבצים ספציפיים למוצרים שנבחרו. לפרטים נוספים על ההגדרות האלה, אפשר לעיין במסמכי התיעוד של המוצר הספציפי (לדוגמה, Hosting). שימו לב שתמיד אפשר להריץ את הפקודה
firebase initבהמשך כדי להגדיר מוצרים נוספים של Firebase.
בסיום האתחול, Firebase יוצר באופן אוטומטי את שני הקבצים הבאים בתיקיית השורש של האפליקציה המקומית:
קובץ הגדרות
firebase.jsonשבו מפורטות ההגדרות של הפרויקט.קובץ
.firebasercשבו מאוחסנים כינויים של הפרויקט.
הקובץ firebase.json
הפקודה firebase init יוצרת קובץ הגדרות firebase.json בשורש של ספריית הפרויקט.
הקובץ firebase.json נדרש כדי לפרוס נכסים באמצעות ה-CLI של Firebase, כי הוא מציין אילו קבצים והגדרות מספריית הפרויקט נפרסים לפרויקט Firebase. חלק מההגדרות יכולות להיות מוגדרות בספריית הפרויקט או במסוף Firebase, לכן חשוב לפתור בעיות פוטנציאליות בפריסה.
אפשר להגדיר את רוב האפשרויות של Firebase Hosting ישירות בקובץ firebase.json. עם זאת, עבור שירותי Firebase אחרים שאפשר לפרוס באמצעות ה-CLI של Firebase, הפקודה firebase init יוצרת קבצים ספציפיים שבהם אפשר להגדיר הגדרות לשירותים האלה, כמו קובץ index.js ל-Cloud Functions. אפשר גם להגדיר ווים (hooks) לפני או אחרי הפריסה בקובץ firebase.json.
קובץ firebase.json הבא הוא דוגמה מקיפה שמציגה אפשרויות הגדרה של הרבה שירותים של Firebase. הוא גם מדגים תכונות כמו Cloud Functions, הגדרה של Local Emulator Suite ותבנית Remote Config. שימו לב שקובץ firebase.json של פרויקט מסוים יכיל רק הגדרות של שירותי Firebase שהוגדרו עבור הפרויקט הספציפי הזה (לדוגמה, רק Firebase Hosting ו-Cloud Functions). הוספת המפתח $schema מאפשרת אימות והשלמה אוטומטית בהרבה עורכי קוד.
{
"$schema": "https://raw.githubusercontent.com/firebase/firebase-tools/master/schema/firebase-config.json",
"hosting": {
"public": "public",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"cleanUrls": true,
"trailingSlash": false
},
"apphosting": {
"backendId": "my-app",
"rootDir": "backend",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
]
},
"firestore": {
"rules": "firestore.rules",
"indexes": "firestore.indexes.json"
},
"storage": {
"rules": "storage.rules"
},
"database": {
"rules": "database.rules.json"
},
"dataconnect": {
"source": "dataconnect",
"location": "us-central1"
},
"functions": [
{
"source": "functions",
"codebase": "default",
"ignore": [
"**/.*",
"**/node_modules/**"
],
"predeploy": [
"npm --prefix \"$RESOURCE_DIR\" run lint",
"npm --prefix \"$RESOURCE_DIR\" run build"
]
}
],
"emulators": {
"auth": {
"port": 9099
},
"functions": {
"port": 5001
},
"firestore": {
"port": 8080
},
"hosting": {
"port": 5000
},
"storage": {
"port": 9199
},
"ui": {
"enabled": true,
"port": 4000
},
"singleProjectMode": true
},
"extensions": {
"my-storage-resizer": "firebase/storage-resize-images@^0.1.0"
},
"remoteconfig": {
"template": "remoteconfig.template.json"
}
}
אמנם firebase.json משמש כברירת מחדל, אבל אפשר להעביר את הדגל --config PATH כדי לציין קובץ הגדרות חלופי.
הגדרה של כמה מסדי נתונים של Cloud Firestore
כשמריצים את הפקודה firebase init, קובץ firebase.json מכיל מפתח firestore יחיד שמתאים למסד הנתונים שמוגדר כברירת מחדל בפרויקט, כמו שמוצג בדוגמה הקודמת.
אם הפרויקט מכיל כמה מסדי נתונים Cloud Firestore, צריך לערוך את הקובץ firebase.json כדי לשייך לכל מסד נתונים קובצי מקור שונים של אינדקסים של מסדי נתונים Cloud Firestore Security Rules. משנים את הקובץ באמצעות מערך JSON, עם רשומה אחת לכל מסד נתונים.
"firestore": [
{
"database": "(default)",
"rules": "firestore.default.rules",
"indexes": "firestore.default.indexes.json"
},
{
"database": "ecommerce",
"rules": "firestore.ecommerce.rules",
"indexes": "firestore.ecommerce.indexes.json"
}
],
Cloud Functions קבצים להתעלמות במהלך הפריסה
בזמן פריסת הפונקציה, ה-CLI מציין באופן אוטומטי רשימה של קבצים בספרייה functions להתעלמות. כך נמנעת פריסה של קבצים מיותרים בעורף, שיכולים להגדיל את נפח הנתונים של הפריסה.
רשימת הקבצים שמתעלמים מהם כברירת מחדל, שמוצגת בפורמט JSON, היא:
"ignore": [
".git",
".runtimeconfig.json",
"firebase-debug.log",
"firebase-debug.*.log",
"node_modules"
]
אם מוסיפים ערכים מותאמים אישית משלכם ל-ignore ב-firebase.json, חשוב לוודא ששומרים (או מוסיפים, אם הוא חסר) את רשימת הקבצים שמוצגת ברשימה הקודמת.
ניהול כינויים של פרויקטים
אפשר לשייך כמה פרויקטים של Firebase לאותה תיקיית פרויקט.
לדוגמה, יכול להיות שתרצו להשתמש בפרויקט אחד ב-Firebase ל-Staging ובפרויקט אחר לפרודקשן. שימוש בסביבות פרויקט שונות מאפשר לכם לאמת שינויים לפני הפריסה לייצור. הפקודה firebase use מאפשרת לעבור בין כינויים וגם ליצור כינויים חדשים.
הוספת כינוי לפרויקט
כשבוחרים פרויקט Firebase במהלך הפעלת הפרויקט, הפרויקט מקבל באופן אוטומטי את הכינוי default. עם זאת, כדי לאפשר הפעלה של פקודות ספציפיות לפרויקט בפרויקט אחר ב-Firebase, אבל עדיין להשתמש בספריית הפרויקט הזהה, מריצים את הפקודה הבאה מתוך ספריית הפרויקט:
firebase use --add
הפקודה הזו תבקש מכם לבחור פרויקט אחר ב-Firebase ולהקצות את הפרויקט ככינוי. הקצאות של כינויים נכתבות לקובץ .firebaserc בתוך ספריית הפרויקט.
שימוש בכינויים לפרויקטים
כדי להשתמש בכינויים שהוקצו לפרויקט Firebase, מריצים אחת מהפקודות הבאות מתוך ספריית הפרויקט.
| פקודה | תיאור |
|---|---|
firebase use |
הצגת רשימה של כינויים מוגדרים בספריית הפרויקט |
firebase use \ |
מפנה את כל הפקודות להרצה מול פרויקט Firebase שצוין.
הפרויקט הזה משמש את ה-CLI כ'פרויקט פעיל'. |
firebase use --clear |
ניקוי הפרויקט הפעיל.
מריצים את הפקודה |
firebase use \ |
הסרת כינוי מספריית הפרויקט. |
כדי לשנות את הפרויקט הפעיל, מעבירים את הדגל --project עם כל פקודה ב-CLI. לדוגמה: אפשר להגדיר את ה-CLI כך שיפעל מול פרויקט Firebase שהקציתם לו את הכינוי staging. אם רוצים להריץ פקודה אחת על פרויקט Firebase שהקציתם לו את הכינוי prod, אפשר להריץ למשל את הפקודה .
בקרת מקורות וכינויי פרויקטים
באופן כללי, כדאי להכניס את קובץ .firebaserc למערכת בקרת הגרסאות כדי לאפשר לצוות לשתף כינויים של פרויקטים. עם זאת, בפרויקטים של קוד פתוח או בתבניות למתחילים, בדרך כלל לא כדאי להכניס את קובץ .firebaserc למערכת בקרת הגרסאות.
אם יש לכם פרויקט פיתוח לשימושכם בלבד, אתם יכולים להעביר את הדגל --project עם כל פקודה או להריץ את הפקודה firebase use PROJECT_ID בלי להקצות כינוי לפרויקט Firebase.
הצגה ובדיקה של פרויקט Firebase באופן מקומי
אתם יכולים להציג ולבדוק את פרויקט Firebase בכתובות URL שמארחות באופן מקומי לפני הפריסה בסביבת הייצור. אם רוצים לבדוק רק תכונות נבחרות, אפשר להשתמש ברשימה מופרדת בפסיקים בדגל בפקודה firebase serve.
מריצים את הפקודה הבאה מהספרייה הראשית של הפרויקט המקומי אם רוצים לבצע אחת מהמשימות הבאות:
- צפייה בתוכן הסטטי של האפליקציה שמתארחת ב-Firebase.
- אתם משתמשים ב-Cloud Functions כדי ליצור תוכן דינמי עבור Firebase Hosting ואתם רוצים להשתמש בפונקציות HTTP בסביבת הייצור (פריסה) כדי לבצע אמולציה של Hosting בכתובת URL מקומית.
firebase serve --only hosting
הדמיה של הפרויקט באמצעות פונקציות HTTP מקומיות
מריצים אחת מהפקודות הבאות מספריית הפרויקט כדי לבצע אמולציה של הפרויקט באמצעות פונקציות HTTP מקומיות.
כדי לבצע אמולציה של פונקציות HTTP ואירוח לצורך בדיקה של כתובות URL מקומיות, משתמשים באחת מהפקודות הבאות:
firebase serve
firebase serve --only functions,hosting // uses a flag
כדי לבצע אמולציה רק לפונקציות HTTP, משתמשים בפקודה הבאה:
firebase serve --only functions
בדיקה ממכשירים מקומיים אחרים
כברירת מחדל, firebase serve מגיב רק לבקשות מ-localhost. המשמעות היא שתוכלו לגשת לתוכן המתארח מדפדפן האינטרנט במחשב, אבל לא ממכשירים אחרים ברשת. אם רוצים לבצע בדיקה ממכשירים מקומיים אחרים, משתמשים בדגל --host, כך:
firebase serve --host 0.0.0.0 // accepts requests to any host
פריסה לפרויקט Firebase
Firebase CLI מנהל את הפריסה של קוד ונכסים לפרויקט Firebase, כולל:
- פריטים חדשים באתרים שלך Firebase Hosting
- חדש, מעודכן או קיים Cloud Functions for Firebase
- סכימות ומחברים חדשים או מעודכנים ל-Firebase Data Connect
- כללים לגבי Firebase Realtime Database
- כללים לגבי Cloud Storage for Firebase
- כללים לגבי Cloud Firestore
- אינדקסים של Cloud Firestore
כדי לפרוס לפרויקט Firebase, מריצים את הפקודה הבאה מספריית הפרויקט:
firebase deploy
אפשר להוסיף הערה לכל פריסה. התגובה הזו תוצג עם פרטי הפריסה האחרים בדף Firebase Hosting של הפרויקט. לדוגמה:
firebase deploy -m "Deploying the best new feature ever."
כשמשתמשים בפקודה firebase deploy, חשוב לשים לב לדברים הבאים:
כדי לפרוס משאבים מתיקיית פרויקט, חייב להיות בתיקיית הפרויקט קובץ
firebase.json. הקובץ הזה נוצר אוטומטית על ידי הפקודהfirebase init.כברירת מחדל,
firebase deployיוצר גרסת הפצה לכל המשאבים שניתן לפרוס בספריית הפרויקט. כדי לפרוס תכונות או שירותים ספציפיים של Firebase, צריך להשתמש בפריסה חלקית.
סתירות בהטמעה של כללי אבטחה
ב-Firebase Realtime Database, Cloud Storage for Firebase ו-Cloud Firestore, אפשר להגדיר כללי אבטחה בספריית הפרויקט המקומית או במסוף Firebase.
אפשרות נוספת למניעת התנגשויות בהטמעה היא שימוש בהטמעה חלקית והגדרת כללים רק במסוף Firebase.
מכסות פריסה
יכול להיות (אבל זה לא סביר) שתחרגו ממכסה שמגבילה את הקצב או את הנפח של פעולות הפריסה שלכם ב-Firebase. לדוגמה, כשמפעילים מספרים גדולים מאוד של פונקציות, יכול להיות שתופיע הודעת שגיאה HTTP 429 Quota. כדי לפתור בעיות כאלה, אפשר לנסות פריסה חלקית.
החזרה של פריסה
אפשר לבטל פריסה מFirebase Hostingהדף של הפרויקט Firebase Hosting על ידי בחירה בפעולה Rollback (ביטול פריסה) לגרסה הרצויה.
אי אפשר לבטל את הפעולה של פרסום כללי אבטחה ב-Firebase Realtime Database, Cloud Storage for Firebase או Cloud Firestore.
פריסת שירותים ספציפיים של Firebase
אם רוצים לפרוס רק תכונות או שירותים ספציפיים של Firebase, אפשר להשתמש ברשימה מופרדת בפסיקים בדגל בפקודה firebase deploy. לדוגמה, הפקודה הבאה פורסת תוכן של Firebase Hosting וכללי אבטחה של Cloud Storage.
firebase deploy --only hosting,storage
בטבלה הבאה מפורטים השירותים והתכונות שזמינים לפריסה חלקית. השמות בדגלים תואמים למפתחות בקובץ ההגדרות firebase.json.
| תחביר של סימון | השירות או התכונה שנפרסו |
|---|---|
--only hosting |
תוכן בFirebase Hosting |
--only database |
Firebase Realtime Database כללים |
--only dataconnect |
Firebase Data Connect סכימות ומחברים |
--only storage |
Cloud Storage for Firebase כללים |
--only firestore |
Cloud Firestore כללים ואינדקסים לכל מסדי הנתונים שהוגדרו |
--only functions |
Cloud Functions for Firebase (אפשר להשתמש בגרסאות ספציפיות יותר של התג הזה) |
פריסת פונקציות ספציפיות
כשפורסים פונקציות, אפשר לטרגט פונקציות ספציפיות. לדוגמה:
firebase deploy --only functions:function1
firebase deploy --only functions:function1,functions:function2
אפשרות נוספת היא לקבץ פונקציות לקבוצות ייצוא בקובץ /functions/index.js. קיבוץ פונקציות מאפשר לכם לפרוס כמה פונקציות באמצעות פקודה אחת.
לדוגמה, אפשר לכתוב את הפונקציות הבאות כדי להגדיר groupA ו-groupB:
var functions = require('firebase-functions/v1');
exports.groupA = {
function1: functions.https.onRequest(...),
function2: functions.database.ref('\path').onWrite(...)
}
exports.groupB = require('./groupB');
בדוגמה הזו, קובץ functions/groupB.js נפרד מכיל פונקציות נוספות שמגדירות באופן ספציפי את הפונקציות ב-groupB. לדוגמה:
var functions = require('firebase-functions/v1');
exports.function3 = functions.storage.object().onChange(...);
exports.function4 = functions.analytics.event('in_app_purchase').onLog(...);
בדוגמה הזו, אפשר לפרוס את כל הפונקציות של groupA על ידי הרצת הפקודה הבאה מספריית הפרויקט:
firebase deploy --only functions:groupA
אפשר גם לטרגט פונקציה ספציפית בתוך קבוצה באמצעות הפקודה הבאה:
firebase deploy --only functions:groupA.function1,groupB.function4
מחיקת פונקציות
ב-Firebase CLI יש תמיכה בפקודות ובאפשרויות הבאות למחיקת פונקציות שנפרסו בעבר:
מחיקת כל הפונקציות שתואמות לשם שצוין בכל האזורים:
firebase functions:delete FUNCTION-1_NAME
מחיקת פונקציה ספציפית שפועלת באזור שאינו ברירת המחדל:
firebase functions:delete FUNCTION-1_NAME --region REGION_NAME
מחיקה של יותר מפונקציה אחת:
firebase functions:delete FUNCTION-1_NAME FUNCTION-2_NAME
מחיקת קבוצת פונקציות שצוינה:
firebase functions:delete GROUP_NAME
דילוג על בקשת האישור:
firebase functions:delete FUNCTION-1_NAME --force
הגדרה של משימות מבוססות סקריפט לפני ואחרי פריסה
אפשר לחבר סקריפטים של Shell לפקודה firebase deploy כדי לבצע משימות לפני או אחרי הפריסה. לדוגמה, סקריפט לפני פריסה יכול לבצע המרה של קוד TypeScript לקוד JavaScript, ו-hook אחרי פריסה יכול להודיע לאדמינים על פריסות של תוכן חדש באתר אל Firebase Hosting.
כדי להגדיר פעולות לפני פריסה או אחרי פריסה, מוסיפים סקריפטים של Bash לקובץ ההגדרות firebase.json. אפשר להגדיר סקריפטים קצרים ישירות בקובץ firebase.json, או להפנות לקבצים אחרים שנמצאים בספריית הפרויקט.
לדוגמה, הסקריפט הבא הוא הביטוי firebase.json למשימה אחרי פריסה ששולחת הודעה ב-Slack אחרי פריסה מוצלחת אל Firebase Hosting.
"hosting": {
// ...
"postdeploy": "./messageSlack.sh 'Just deployed to Firebase Hosting'",
"public": "public"
}
קובץ הסקריפט messageSlack.sh נמצא בספריית הפרויקט ונראה כך:
curl -X POST -H 'Content-type: application/json' --data '{"text":"$1"}'
\https://SLACK_WEBHOOK_URLאפשר להגדיר ווים של predeploy ו-postdeploy לכל אחד מהנכסים שאפשר לפרוס. חשוב לדעת שהרצת הפקודה firebase deploy מפעילה את כל המשימות של לפני הפריסה ואחרי הפריסה שמוגדרות בקובץ firebase.json. כדי להריץ רק את המשימות שמשויכות לשירות ספציפי של Firebase, משתמשים בפקודות פריסה חלקיות.
הטיזרים predeploy ו-postdeploy מדפיסים את הפלט הרגיל ואת זרמי השגיאות של הסקריפטים בטרמינל. במקרים של כשלים, חשוב לשים לב לנקודות הבאות:
- אם פעולת ה-hook לפני הפריסה לא מסתיימת כמצופה, הפריסה מבוטלת.
- אם הפריסה נכשלת מסיבה כלשהי, לא מופעלים ווים של postdeploy.
משתני סביבה
בסקריפטים שפועלים ב-hooks של predeploy ו-postdeploy, משתני הסביבה הבאים זמינים:
-
$GCLOUD_PROJECT: מזהה הפרויקט הפעיל -
$PROJECT_DIR: תיקיית השורש שמכילה את הקובץfirebase.json -
$RESOURCE_DIR: (לסקריפטים שלhostingו-functionsבלבד) המיקום של הספרייה שמכילה את משאבי Hosting או Cloud Functions שרוצים לפרוס
ניהול של כמה מופעים של Realtime Database
פרויקט Firebase יכול לכלול מספר מופעים של Firebase Realtime Database. כברירת מחדל, פקודות ה-CLI פועלות על מופע מסד הנתונים שמוגדר כברירת מחדל.
אבל אפשר ליצור אינטראקציה עם מופע מסד נתונים שאינו ברירת המחדל באמצעות הדגל --instance DATABASE_NAME--instance:
firebase database:getfirebase database:profilefirebase database:pushfirebase database:removefirebase database:setfirebase database:update
הפניה לפקודות
פקודות ניהול ב-CLI
| פקודה | תיאור |
|---|---|
| עזרה | מציגה מידע עזרה לגבי ה-CLI או פקודות ספציפיות. |
| init | משייך ומגדיר פרויקט Firebase חדש בספרייה הנוכחית.
הפקודה הזו יוצרת קובץ תצורה firebase.json בספרייה הנוכחית. |
| login | מאמת את ה-CLI באמצעות חשבון Google שלכם. נדרשת גישה לדפדפן אינטרנט. כדי להיכנס ל-CLI בסביבות מרוחקות שלא מאפשרות גישה ל- localhost, משתמשים בדגל --no-localhost |
| login:ci | יצירת אסימון אימות לשימוש בסביבות לא אינטראקטיביות. |
| login:add | כניסה לחשבון Google נוסף. |
| login:list | רשימה של כל חשבונות Google המאומתים. |
| login:use | הגדרת חשבון Google פעיל. |
| logout | המערכת תוציא אתכם מחשבון Google ב-CLI. |
| open | פותח דפדפן עם משאבי פרויקט רלוונטיים. |
| projects:list | רשימה של כל הפרויקטים ב-Firebase שיש לכם גישה אליהם. |
| use | מגדיר את פרויקט Firebase הפעיל עבור ה-CLI. ניהול כינויים לפרויקטים. |
פקודות לניהול פרויקטים
| פקודה | תיאור | |
|---|---|---|
| ניהול פרויקטים ב-Firebase | ||
| projects:addfirebase | הוספת משאבי Firebase לפרויקט Google Cloud קיים. | |
| projects:create | יוצר פרויקט חדש Google Cloud, ואז מוסיף משאבי Firebase לפרויקט החדש. | |
| projects:list | רשימה של כל הפרויקטים ב-Firebase שיש לכם גישה אליהם. | |
| ניהול אפליקציות Firebase (iOS, Android, Web) | ||
| apps:create | יוצר אפליקציית Firebase חדשה בפרויקט הפעיל. | |
| apps:list | רשימה של אפליקציות Firebase רשומות בפרויקט הפעיל. | |
| apps:sdkconfig | הפקודה מדפיסה את הגדרות שירותי Google של אפליקציית Firebase. | |
| setup:web | הוצא משימוש. במקום זאת, משתמשים ב-apps:sdkconfig ומציינים את web כארגומנט של הפלטפורמה.הפלטפורמה מדפיסה את הגדרת שירותי Google של אפליקציית אינטרנט ב-Firebase. |
|
| ניהול של גיבובים של אישורי SHA (ל-Android בלבד) | ||
| apps:android:sha:create \ FIREBASE_APP_ID SHA_HASH |
הוספת הגיבוב של אישור ה-SHA שצוין לאפליקציית Android של Firebase שצוינה. | |
| apps:android:sha:delete \ FIREBASE_APP_ID SHA_HASH |
מוחק את הגיבוב של אישור ה-SHA שצוין מאפליקציית Android ב-Firebase שצוינה. | |
| apps:android:sha:list \ FIREBASE_APP_ID |
מציג רשימה של גיבובי אישורים מסוג SHA עבור אפליקציית Firebase ל-Android שצוינה. | |
פריסה ופיתוח מקומי
הפקודות האלה מאפשרות לכם לפרוס את האתר Firebase Hosting ולבצע בו פעולות.
| פקודה | תיאור |
|---|---|
| deploy | הכלי פורס קוד ונכסים מספריית הפרויקט לפרויקט הפעיל. במקרה של Firebase Hosting, נדרש קובץ הגדרה firebase.json.
|
| serve | מפעיל שרת אינטרנט מקומי עם ההגדרה Firebase Hosting.
במקרה של Firebase Hosting, נדרש קובץ הגדרה firebase.json. |
פקודות App Distribution
| פקודה | תיאור |
|---|---|
| appdistribution:distribute \ --app FIREBASE_APP_ID |
הופכים את הגרסה לזמינה לבודקים. |
| appdistribution:testers:add | הוספת בודקים לפרויקט. |
| appdistribution:testers:remove | הסרת בודקים מהפרויקט. |
| appdistribution:testers:list | מציג רשימה של בודקים בפרויקט. |
| appdistribution:groups:create | יוצרת קבוצת בודקים. |
| appdistribution:groups:delete | מחיקת קבוצת בודקים. |
| appdistribution:groups:list | הצגת רשימה של קבוצות בודקים בפרויקט. |
פקודות App Hosting
| פקודה | תיאור |
|---|---|
| apphosting:backends:create \ --project PROJECT_ID \ --location REGION --app APP_ID |
יצירת אוסף של משאבים מנוהלים שמקושרים לבסיס קוד יחיד שכולל קצה עורפי App Hosting. אפשר לציין אפליקציית אינטרנט קיימת ב-Firebase באמצעות מזהה האפליקציה ב-Firebase. |
| apphosting:backends:get \ BACKEND_ID \ --project PROJECT_ID \ --location REGION |
מאחזר פרטים ספציפיים, כולל כתובת ה-URL הציבורית, של קצה עורפי. |
| apphosting:backends:list \ --project PROJECT_ID |
אחזור רשימה של כל השרתים העורפיים הפעילים שמשויכים לפרויקט. |
| firebase apphosting:backends:delete \ BACKEND_ID \ --project PROJECT_ID \ --location REGION |
מחיקת קצה עורפי מהפרויקט. |
| firebase apphosting:config:export \ --project PROJECT_ID \ --secrets ENVIRONMENT_NAME |
מייצא סודות לשימוש באמולציית אפליקציות. ברירת המחדל היא סודות שמאוחסנים ב- apphosting.yaml, או שאפשר להשתמש ב---secrets כדי לציין כל סביבה שיש לה קובץ apphosting.ENVIRONMENT_NAME.yaml תואם.
|
| firebase apphosting:rollouts:create \ BACKEND_ID \ --git_branch BRANCH_NAME \ --git_commit COMMIT_ID |
יצירת פריסה שמופעלת באופן ידני. אפשר לציין את הקומיט האחרון לענף או קומיט ספציפי. אם לא מוצגות אפשרויות, המערכת תציג רשימה של ענפים לבחירה. |
| apphosting:secrets:set
KEY
--project PROJECT_ID \ --location REGION \ --data-file DATA_FILE_PATH |
מאחסן חומר סודי ב-Secret Manager. אפשר לספק נתיב שממנו ייקראו נתונים סודיים. ההגדרה היא _ כדי לקרוא נתונים סודיים מקלט רגיל.
|
| apphosting:secrets:grantaccess
KEY
BACKEND_ID \ --project PROJECT_ID \ --location REGION |
נותן לחשבון השירות של ה-backend גישה לסוד שצוין, כדי ש-App Hosting יוכל לגשת אליו בזמן הבנייה או בזמן הריצה. |
| apphosting:secrets:describe
KEY \ --project PROJECT_ID |
אחזור המטא-נתונים של סוד והגרסאות שלו. |
| firebase apphosting:secrets:access \ KEY[@version] \ --project PROJECT_ID |
הפונקציה ניגשת לערך סודי בהינתן הסוד והגרסה שלו. ברירת המחדל היא גישה לגרסה האחרונה. |
פקודות Authentication (ניהול משתמשים)
| פקודה | תיאור |
|---|---|
| auth:export | מייצא את חשבונות המשתמשים של הפרויקט הפעיל לקובץ JSON או CSV. פרטים נוספים זמינים בדף auth:import ו-auth:export. |
| auth:import | מייבא את חשבונות המשתמשים מקובץ JSON או CSV לפרויקט הפעיל. פרטים נוספים זמינים בדף auth:import ו-auth:export. |
פקודות Cloud Firestore
| פקודה | תיאור |
|---|---|
| firestore:locations |
רשימת המיקומים הזמינים למסד הנתונים של Cloud Firestore. |
| firestore:databases:create DATABASE_ID |
יוצרים מופע של מסד נתונים במצב מקורי בפרויקט Firebase. הפקודה מקבלת את הדגלים הבאים:
|
| firestore:databases:list |
מציגים רשימה של מסדי נתונים בפרויקט Firebase. |
| firestore:databases:get DATABASE_ID |
קבלת הגדרות מסד נתונים עבור מסד נתונים ספציפי בפרויקט Firebase. |
| firestore:databases:update DATABASE_ID |
עדכון הגדרת מסד נתונים ספציפי בפרויקט Firebase. חובה להוסיף לפחות דגל אחד. הפקודה מקבלת את הדגלים הבאים:
|
| firestore:databases:delete DATABASE_ID |
מחיקת מסד נתונים בפרויקט Firebase. |
| firestore:indexes |
מציגים רשימה של אינדקסים למסד נתונים בפרויקט Firebase. הפקודה מקבלת את הדגל הבא:
|
| firestore:delete |
מוחק מסמכים במסד הנתונים של הפרויקט הפעיל. באמצעות ה-CLI, אפשר למחוק באופן רקורסיבי את כל המסמכים באוסף. שימו לב: מחיקת נתונים מ-Cloud Firestore באמצעות ה-CLI כרוכה בעלויות קריאה ומחיקה. מידע נוסף זמין במאמר הסבר על החיוב ב-Cloud Firestore. הפקודה מקבלת את הדגל הבא:
|
פקודות Cloud Functions for Firebase
| פקודה | תיאור |
|---|---|
| functions:config:clone | הוצא משימוש. משכפל את הסביבה של פרויקט אחר לפרויקט Firebase הפעיל. |
| functions:config:export | מייצא את הגדרות זמן הריצה של הפרויקט הפעיל אל Google Cloud Secret Manager. |
| functions:config:get | Deprecated. אחזור ערכי הגדרות קיימים של Cloud Functions בפרויקט הפעיל. |
| functions:config:set | Deprecated. מאחסן ערכים של הגדרות זמן ריצה של Cloud Functions הפעיל בפרויקט. |
| functions:config:unset | הוצא משימוש. הפקודה מסירה ערכים מההגדרה הפעילה של זמן הריצה של הפרויקט. |
| functions:delete \ FUNCTION_NAME |
מחיקת הפונקציה שצוינה. |
| functions:list | רשימה של פונקציות שנפרסו. |
| functions:log | קריאת יומנים מ-Cloud Functions שנפרס. |
| functions:secrets:access \ SECRET_NAME |
הפונקציה ניגשת לערך סודי בהינתן הסוד והגרסה שלו. |
| functions:secrets:destroy \ SECRET_NAME |
מחיקת סוד. |
| functions:secrets:get \ SECRET_NAME |
אחזור המטא-נתונים של סוד והגרסאות שלו. |
| functions:secrets:prune | מחיקת סודות שלא בשימוש. |
| functions:secrets:set \ SECRET_NAME |
יוצר או מעדכן סוד. |
| functions:shell | מפעיל מעטפת אינטראקטיבית מקומית לבדיקת פונקציות. |
מידע נוסף מופיע במאמרי העזרה בנושא הגדרת הסביבה.
פקודות Crashlytics
| פקודה | תיאור |
|---|---|
| crashlytics:mappingfile:generateid \ --resource-file=PATH/TO/ANDROID_RESOURCE.XML |
יוצר מזהה ייחודי של קובץ מיפוי בקובץ המשאבים (XML) של Android שצוין. |
| crashlytics:mappingfile:upload \ --app=FIREBASE_APP_ID \ --resource-file=PATH/TO/ANDROID_RESOURCE.XML \ PATH/TO/MAPPING_FILE.TXT |
מעלה קובץ מיפוי (TXT) שמתאים ל-Proguard עבור האפליקציה הזו, ומקשר אותו למזהה קובץ המיפוי שמוצהר בקובץ המשאבים (XML) של Android שצוין. |
| crashlytics:symbols:upload \ --app=FIREBASE_APP_ID \ PATH/TO/SYMBOLS |
יוצר קובץ סמלים שתואם ל-Crashlytics עבור קריסות של ספריות מקוריות ב-Android ומעלה אותו לשרתי Firebase. |
פקודות Data Connect
הפקודות האלה ותרחישי השימוש שלהן מוסברים בפירוט רב יותר במדריך העזר ל-CLI של Data Connect.
| פקודה | תיאור |
|---|---|
| dataconnect:services:list | רשימה של כל שירותי Data Connect שנפרסו בפרויקט Firebase. |
| dataconnect:sql:diff \ SERVICE_ID |
ההבדלים בין סכימת Data Connect מקומית לבין סכימת מסד הנתונים של Cloud SQL בשירות שצוין. |
| dataconnect:sql:migrate \ --force \ SERVICE_ID |
העברת הסכימה של מסד הנתונים ב-Cloud SQL כך שתתאים לסכימה המקומית Data Connect. |
| dataconnect:sql:grant\ --role=ROLE \ --email=EMAIL \ SERVICE_ID |
מעניק את תפקיד ה-SQL לכתובת האימייל שצוינה של המשתמש או של חשבון השירות.
עבור הדגל --role, תפקיד ה-SQL שרוצים להעניק הוא אחד מהתפקידים הבאים:
owner, writer או reader.
בדגל --email, מציינים את כתובת האימייל של המשתמש או של חשבון השירות שרוצים להקצות לו את התפקיד.
|
| dataconnect:sdk:generate | ליצור ערכות SDK עם הקלדה עבור Data Connect המחברים שלכם. |
פקודות Extensions
| פקודה | תיאור |
|---|---|
| ext | הצגת מידע על השימוש בפקודות Firebase Extensions. מציג רשימה של מופעי התוספים שהותקנו בפרויקט הפעיל. |
| ext:configure \ EXTENSION_INSTANCE_ID |
הפונקציה מגדירה מחדש את ערכי הפרמטרים של מופע של תוסף במניפסט התוסף. |
| ext:info \ PUBLISHER_ID/EXTENSION_ID |
הדפסת מידע מפורט על תוסף. |
| ext:install \ PUBLISHER_ID/EXTENSION_ID |
הוספת מופע חדש של תוסף למניפסט התוסף. |
| ext:sdk:install | מתקין ערכות SDK להגדרת תוספים בפונקציות. |
| ext:list | מציגה רשימה של כל המופעים של התוספים שהותקנו בפרויקט Firebase. מדפיס את מזהה המופע של כל תוסף. |
| ext:uninstall \ EXTENSION_INSTANCE_ID |
הסרה של מופע של תוסף ממניפסט התוסף. |
| ext:update \ EXTENSION_INSTANCE_ID |
מעדכנים מופע של תוסף לגרסה האחרונה במניפסט התוסף. |
| ext:export | הפעולה הזו תייצא את כל המופעים של התוספים שהותקנו מהפרויקט אל מניפסט התוסף. |
Extensions פקודות של בעלי תוכן דיגיטלי
| פקודה | תיאור |
|---|---|
| ext:dev:init | יוצר בסיס קוד שלד לתוסף חדש בספרייה הנוכחית. |
| ext:dev:list \ PUBLISHER_ID |
הפקודה מדפיסה רשימה של כל התוספים שהועלו על ידי מו"ל. |
| ext:dev:register | רושם פרויקט Firebase כפרויקט לפרסום תוספים. |
| ext:dev:deprecate \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE |
הוצאה משימוש של גרסאות תוספים שתואמות לפרדיקט הגרסה. הפרדיקט של הגרסה יכול להיות גרסה אחת (למשל 1.0.0) או טווח של גרסאות (למשל >1.0.0).אם לא מציינים פרדיקט של גרסה, כל הגרסאות של התוסף יוצאות משימוש. |
| ext:dev:undeprecate \ PUBLISHER_ID/EXTENSION_ID \ VERSION_PREDICATE |
ביטול ההוצאה משימוש של גרסאות תוספים שתואמות לפרדיקט הגרסה. הפרדיקט של הגרסה יכול להיות גרסה אחת (למשל 1.0.0),
או טווח של גרסאות (למשל >1.0.0).אם לא מציינים פרדיקט של גרסה, כל הגרסאות של התוסף יחזרו להיות זמינות. |
| ext:dev:upload \ PUBLISHER_ID/EXTENSION_ID |
מעלה גרסה חדשה של תוסף. |
| ext:dev:usage \ PUBLISHER_ID |
ההגדרה הזו מציגה את מספר ההתקנות ומדדי השימוש בתוספים שהועלו על ידי בעל תוכן דיגיטלי. |
פקודות Hosting
| פקודה | תיאור |
|---|---|
| hosting:disable |
הפסקת הצגת מודעות בתנועה שמגיעה מ-Firebase Hosting בפרויקט הפעיל ב-Firebase. אחרי שמריצים את הפקודה הזו, בכתובת ה-URL של הפרויקט Hosting תוצג ההודעה 'האתר לא נמצא'. |
| ניהול של Hosting אתרים | |
| firebase hosting:sites:create \ SITE_ID |
יוצר אתר חדש Hosting בפרויקט Firebase הפעיל באמצעות (אופציונלי) כדי לשייך אפליקציית אינטרנט קיימת ב-Firebase לאתר החדש, מעבירים את הדגל הבא:
|
| firebase hosting:sites:delete \ SITE_ID |
מחיקת האתר Hosting שצוין ממשק ה-CLI מציג בקשת אישור לפני מחיקת האתר. (אופציונלי) כדי לדלג על הודעת האישור, מעבירים את הדגלים הבאים: |
| firebase hosting:sites:get \ SITE_ID |
מאחזר מידע על Hosting אתר ספציפי |
| firebase hosting:sites:list |
רשימה של כל האתרים ב-Hosting בפרויקט Firebase הפעיל |
| ניהול ערוצי תצוגה מקדימה | |
| firebase hosting:channel:create \ CHANNEL_ID |
יוצר ערוץ חדש לתצוגה מקדימה באתר Hosting שמוגדר כברירת מחדל באמצעות הפקודה הזו לא מופעלת בערוץ. |
| 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 |
משכפל את הגרסה האחרונה שהופעלה בערוץ ה'מקור' שצוין לערוץ ה'יעד' שצוין הפקודה הזו גם מבצעת פריסה לערוץ ה "יעד" שצוין. אם ערוץ היעד עדיין לא קיים, הפקודה הזו יוצרת ערוץ חדש לתצוגה מקדימה באתר היעד Hosting לפני הפריסה לערוץ. |
| firebase hosting:clone \ SOURCE_SITE_ID:@VERSION_ID \ TARGET_SITE_ID:TARGET_CHANNEL_ID |
משכפל את הגרסה שצוינה לערוץ ה'יעד' שצוין הפקודה הזו גם מבצעת פריסה לערוץ ה "יעד" שצוין. אם ערוץ היעד עדיין לא קיים, הפקודה הזו יוצרת ערוץ חדש לתצוגה מקדימה באתר היעד Hosting לפני הפריסה לערוץ. אפשר למצוא את |
פקודות Realtime Database
שימו לב שאפשר ליצור את מופע ברירת המחדל הראשוני של Realtime Database במסוף Firebase או באמצעות תהליך העבודה הכללי של firebase init או התהליך הספציפי של firebase init database.
אחרי שיוצרים מופעים, אפשר לנהל אותם כמו שמתואר במאמר ניהול של כמה מופעים של Realtime Database.
| פקודה | תיאור |
|---|---|
| database:get | מאחזר נתונים ממסד הנתונים של הפרויקט הפעיל ומציג אותם בפורמט JSON. תמיכה בהרצת שאילתות על נתונים שעברו אינדוקס. |
| database:instances:create | יוצר מכונת מסד נתונים עם שם מכונה שצוין. מקבל את האפשרות --location ליצירת מסד נתונים באזור מסוים. שמות האזורים שבהם אפשר להשתמש באפשרות הזו מפורטים במאמר בנושא בחירת מיקומים לפרויקט.
אם לא קיים מופע של מסד נתונים בפרויקט הנוכחי, תתבקשו להפעיל את התהליך firebase init כדי ליצור מופע.
|
| database:instances:list | הצגת רשימה של כל מופעי מסד הנתונים בפרויקט הזה. מקבל את האפשרות --location לרישום מסדי נתונים באזור מסוים. שמות האזורים שבהם אפשר להשתמש באפשרות הזו מפורטים במאמר בנושא בחירת מיקומים לפרויקט. |
| database:profile | יוצר פרופיל של פעולות במסד הנתונים של הפרויקט הפעיל. מידע נוסף זמין במאמר בנושא סוגי פעולות של Realtime Database. |
| database:push | הפונקציה דוחפת נתונים חדשים לרשימה במיקום שצוין במסד הנתונים של הפרויקט הפעיל. מקבל קלט מקובץ, מ-STDIN או מארגומנט של שורת פקודה. |
| database:remove | מחיקת כל הנתונים במיקום שצוין במסד הנתונים של הפרויקט הפעיל. |
| database:set | החלפת כל הנתונים במיקום שצוין במסד הנתונים של הפרויקט הפעיל. מקבל קלט מקובץ, מ-STDIN או מארגומנט של שורת פקודה. |
| database:update | מבצע עדכון חלקי במיקום שצוין במסד הנתונים של הפרויקט הפעיל. מקבל קלט מקובץ, מ-STDIN או מארגומנט של שורת פקודה. |
פקודות Remote Config
| פקודה | תיאור |
|---|---|
| remoteconfig:versions:list \ --limit NUMBER_OF_VERSIONS |
רשימה של עשר הגרסאות האחרונות של התבנית. מציינים 0 כדי להחזיר את כל הגרסאות הקיימות, או מעבירים את האפשרות --limit כדי להגביל את מספר הגרסאות שמוחזרות. |
| remoteconfig:get \ --v, version_number VERSION_NUMBER --o, output FILENAME |
מקבל את התבנית לפי גרסה (ברירת המחדל היא הגרסה האחרונה)
ומפיק את קבוצות הפרמטרים, הפרמטרים, שמות התנאים והגרסה לטבלה. אפשר גם לכתוב את הפלט בקובץ שצוין באמצעות -o, FILENAME. |
| remoteconfig:rollback \ --v, version_number VERSION_NUMBER --force |
מחזירה את תבנית Remote Config לגרסה קודמת ספציפית או לגרסה הקודמת המיידית (הגרסה הנוכחית פחות 1). אלא אם מועבר --force, מוצגות הנחיות Y/N
לפני שממשיכים להחזרה למצב הקודם. |
| remoteconfig:experiments:list \ --filter EXPRESSION --pageSize NUMBER --pageToken TOKEN |
מציג רשימה של כל הניסויים Remote Config בפרויקט, עם אפשרות סינון, מספר הניסויים שיוחזרו בכל דף (ברירת המחדל היא 10) וטוקן דף כהיסטור התחלתי לרשימה. |
| remoteconfig:experiments:get \ EXPERIMENT_ID |
מקבל את הפרטים של הניסוי Remote Config שצוין. |
| remoteconfig:experiments:delete \ EXPERIMENT_ID |
מחיקת הRemote Config הניסוי שצוין. |
| remoteconfig:rollouts:list \ --filter EXPRESSION --pageSize NUMBER --pageToken TOKEN |
מציגה את כל ההשקות של פרויקט, עם אפשרות סינון, מספר ההשקות שיוחזרו בכל דף (ברירת המחדל היא 10) וטוקן של דף כהיסטוריית התחלה של הרשימה.Remote Config |
| remoteconfig:rollouts:get \ ROLLOUT_ID |
הפונקציה מחזירה את הפרטים של Remote Config ההשקה שצוינה. |
| remoteconfig:rollouts:delete \ ROLLOUT_ID |
מחיקת הפריסה שצוינה של Remote Config. |