مرجع أمر واجهة سطر الأوامر في Firebase لـ Data Connect

Firebase CLI هي أداة تتيح لك إدارة وضبط منتجات وخدمات Firebase من سطر الأوامر.

توفّر واجهة برمجة التطبيقات (CLI) أوامر يمكن استخدامها لتنفيذ مجموعة متنوعة من مهام Data Connect، مثل إنشاء مشروع Data Connect جديد وإعداد دليل عمل محلي ملائم وإعداد محاكي Data Connect وعرض موارد Data Connect و إنشاء حِزم تطوير البرامج (SDK) للعملاء وغير ذلك.

أوامر الإعداد

إضافة Data Connect إلى مشروع على Firebase

firebase init

استخدِم firebase init لإعداد إعدادات مشروع محلي جديد. ينشئ سير العمل هذا ملفات إعدادات Firebase أو يعدّلها في directory.

firebase init

ترشدك عملية firebase init خلال عملية إعداد خدمة وقاعدة بيانات، وتتيح لك اختياريًا تثبيت محاكي Data Connect و ضبط حِزم SDK التي تم إنشاؤها.

إعداد الخدمة وقاعدة البيانات

إذا اخترت dataconnect لإعداد المنتج، سيطلب منك سطر الأوامر CLI اسم الخدمة وموقعها الجغرافي الجديدَين، وما إذا كنت تريد ربط مثيل Cloud SQL الحالي ل PostgreSQL أو إنشاء مثيل جديد.

في حال ربط مثيل حالي، تتحقّق أداة سطر الأوامر من الإعدادات المتوافقة، مثل مصادقة إدارة الهوية وإمكانية الوصول وعناوين IP العامة.

إعداد Local Emulator Suite

يقدّم مسار سطر الأوامر خيار إعداد المحاكيات، بما في ذلك محاكي Data Connect.

Data Connect أوامر المحاكي

ابدأ تشغيل محاكي Data Connect.

emulators:start/exec

firebase emulators:start/exec

استخدِم الإصدار Local Emulator Suite من محاكي Data Connect في الوضع التفاعلي مع start أو الوضع غير التفاعلي المستنِد إلى النصوص البرمجية مع exec.

أوامر إدارة المخطّط والموصِّل

يحتوي هذا القسم على معلومات مرجعية لواجهة سطر الأوامر للأوامر التي تستخدمها لإدارة المخططات وأدوات الربط.

للاطّلاع على كيفية استخدام حالات الاستخدام والممارسات المقترَحة المتعلّقة بهذه الطلبات، يُرجى الاطّلاع على دليل إدارة المخططات والموصّلات.

نشر موارد المخطط والموصّل

تفعيل

firebase deploy

ينشر هذا الأمر موارد خدمات Data Connect المفهرَسة فيملف firebase.json. يتم إجراء نقل مخطّط إذا لزم الأمر.

Command الوصف

firebase deploy

الإبلاغ الوصف

–-only dataconnect

يمكنك نشر المخططات وأدوات الربط لجميع خدمات Data Connect لهذا المشروع، ولكن لا يمكنك نشر موارد منتجات Firebase الأخرى.

–-only dataconnect:serviceId

نشر المخطّط وأدوات الربط لخدمة Data Connect المحدّدة

–-only dataconnect:serviceId:connectorId

يمكنك نشر أداة ربط واحدة لخدمة Data Connect المحدّدة.

–-only dataconnect:serviceId:schema

يمكنك نشر المخطّط لخدمة Data Connect المحدّدة.

باستخدام علامات –-only، يمكنك تمرير قيم مفصولة بفواصل لنشر أي مجموعة فرعية من الموارد التي تريدها.

firebase deploy --only dataconnect:service1:schema,dataconnect:service2

سرد خدمات Data Connect والمخططات والموصّلات

dataconnect:services:list

firebase dataconnect:services:list

يعرض هذا الأمر معلومات أساسية عن الخدمات والمخططات وأدوات الربط التي تم نشرها في مشروع.

مقارنة مخطّطات SQL ونقلها

dataconnect:sql:diff

firebase dataconnect:sql:diff

يقارن هذا الأمر المخطّط المحلي لخدمة مع المخطّط الحالي لقاعدة بيانات Cloud SQL المقابلة. تُطبع الأوامر التي سيتم تنفيذها لترحيل قاعدة البيانات إلى المخطّط الجديد.

Command الوصف

firebase dataconnect:sql:diff

العلامة/المَعلمة الوصف

serviceId

حدِّد الخدمة. في حال حذفها، ستتم طباعة اختلاف لجميع الخدمات في firebase.json.

dataconnect:sql:migrate

firebase dataconnect:sql:migrate

يطبّق هذا الأمر تغييرات المخطّط المحلي على قاعدة بيانات Cloud SQL لخدمة معيّنة.

عند إعداد مشروع Data Connect جديد على الجهاز، باستخدام ملف dataconnect.yaml التلقائي، يتمثل سلوك الأمر dataconect:sql:migrate في إعلامك بأي تغييرات مطلوبة، ثم إعلامك بأي تغييرات اختيارية، قبل تنفيذ التغييرات. يمكنك تعديل هذا السلوك لتضمين التغييرات الاختيارية أو تجاهلها دائمًا من خلال تعديل إعدادات dataconnect.yaml ، كما هو موضّح في مقالة نقل مخطّط في الوضع الصارم أو المتوافق.

في البيئات التفاعلية، تعرض واجهة سطر الأوامر كل عبارة SQL لنقل البيانات (وما إذا كانت مدمرة) وتطلب منك التغييرات التي تريد تطبيقها. إنّ ضبط العلامة --force يعادل قبول جميع الطلبات.

في البيئات غير التفاعلية:

  • بدون --force، يتم إجراء تغييرات غير مدمرة فقط. في حال حدوث تغييرات مدمرة، يتم إيقاف وحدة التحكم في واجهة المستخدم بدون إجراء أي تغييرات.
  • مع --force، يتم إجراء جميع التغييرات. إذا كان ذلك يتضمّن أي تغييرات تدميرية، تتم طباعتها ويُطلب منك تحديد ما إذا كنت تريد المتابعة، ما لم يتم تقديم العلامة --force.
Command الوصف

firebase dataconnect:sql:migrate

الإبلاغ الوصف

serviceId

نقل قاعدة بيانات الخدمة المحدّدة يتم تحديد serviceId بشكلٍ افتراضي إذا كان مشروعك يتضمّن خدمة واحدة فقط.

–-force

قبول الطلبات تلقائيًا

كما هو الحال مع علامات --only الأخرى، يمكنك تقديم خدمات متعددة مفصولة بفواصل.

نقل مخطّط في الوضع الصارم أو المتوافق

Data Connect تتضمّن عمليات نقل المخططات حالتَين مختلفتَين للتحقّق من صحة المخطط: صارمة ومتوافقة. يتطلب التحقّق من الصحة في الوضع الصارم أن يتطابق مخطّط قاعدة بيانات تمامًا مع مخطّط التطبيق قبل أن يتم نشر مخطّط التطبيق. يتطلّب التحقّق من وضع التوافق أن يكون مخطّط قاعدة بيانات متوافقًا مع مخطّط التطبيق، ما يعني أنّه لا يتم تعديل العناصر في قاعدة بياناتك التي لا يستخدمها مخطّط تطبيقك.

يمكنك الاطّلاع على أوضاع التحقّق من المخطّط وأفضل الممارسات لنقل المخطّط في دليل إدارة المخطّط والرابط.

يتم تحديد وضع التحقّق من الصحة باستخدام مفتاح schemaValidation في ملف dataconnect.yaml. إذا لم يتم تحديد schemaValidation، تطبِّق وحدة تحكّم سطر الأوامر التغييرات المتوافقة وتسألك قبل تنفيذ أي تغييرات صارمة. اطّلِع على مرجع الضبط.

أوامر حِزم تطوير البرامج (SDK)

إنشاء حِزم SDK

dataconnect:sdk:generate

firebase dataconnect:sdk:generate

ينشئ هذا الأمر حِزم SDK المكتوبة التي تمّ الإعلان عنها في connector.yaml.

اطّلِع أيضًا على أدلة العمل مع حِزم تطوير البرامج (SDK) للويب، وحِزم تطوير البرامج (SDK) لنظام التشغيل Android وحِزم تطوير البرامج (SDK) لنظام التشغيل iOS.

Command الوصف

firebase dataconnect:sdk:generate

الإبلاغ الوصف

–-watch

يحافظ على استمرار العملية وينشئ حِزم تطوير برامج جديدة كلما حفظت تغييرات على ملفات مخطط GQL وملفّات الموصّل.

في حال تعذّر إنشاء الرمز، ستتم طباعة الأخطاء في stdout، ولن يتم تغيير الرمز الذي تم إنشاؤه، وسيستمر تنفيذ الأمر.

–-only connectorId:platform

يمكنك إنشاء حِزم تطوير برامج فقط لمنصّة واحدة وموصّل واحد.

باستخدام علامات –only، يمكنك تمرير قيم مفصولة بفواصل.

firebase dataconnect:sdk:generate –-only connector1, connector1:kotlin

أوامر إدارة Cloud SQL

منح أدوار SQL في Cloud SQL

dataconnect:sql:grant

firebase dataconnect:sql:grant

يعمل Data Connect على مثيل PostgreSQL الخاص بك المستضاف على Cloud SQL. في بعض الحالات، قد تحتاج إلى الوصول إلى قاعدة بياناتك مباشرةً للاستعلام عن البيانات التي أنشأتها تطبيقات Data Connect أو تعديلها. للقيام بذلك، يجب منح أحد الأدوار المحدّدة في هذا القسم للمستخدم أو حساب الخدمة المطلوبَين.

لمعرفة تفاصيل الأدوار الممنوحة، يُرجى الاطّلاع على أدوار مستخدمي PostgreSQL.

الدور دور SQL الأذونات الاستخدام قابل للمنح
قارئ firebasereader_<db_name>_<schema_name> إذن بالقراءة فقط في قاعدة البيانات

يمكنه تنفيذ عمليات SELECT على جميع الجداول ضمن المخطط المحدّد.
مثالي للمستخدمين أو الخدمات التي تتطلّب استرداد البيانات ولكن ليس تعديلها. نعم
كاتب firebasewriter_<db_name>_<schema_name> الإذن بالقراءة والكتابة في قاعدة البيانات

يمكنه تنفيذ عمليات SELECT وINSERT وUPDATE وDELETE وTRUNCATE على جميع الجداول ضمن المخطّط.
مناسبة للمستخدمين أو الخدمات التي تحتاج إلى تعديل البيانات داخل قاعدة البيانات نعم
المالك firebaseowner_<db_name>_<schema_name> مالك المخطّط

لديه جميع الامتيازات على جميع الجداول والتسلسلات في المخطّط.
يمنح هذا الدور، بالإضافة إلى دور roles/cloudsql.client في إدارة الهوية وإمكانية الوصول، الإذن بتنفيذ عملية نقل البيانات في قاعدة البيانات.

على سبيل المثال، عند الاتصال بالرقم firebase dataconnect:sql:migrate.
نعم
مستخدم مميز cloudsqlsuperuser دور مستخدِم متميّز مضمّن مع امتيازات كاملة في قاعدة البيانات

بالإضافة إلى أذونات المالك، يمكنه إنشاء مخطّطات وإلغاء مخطّطات وتثبيت إضافات وتنفيذ أي مهام إدارية أخرى.

يمكن الوصول إليه في واجهة برمجة التطبيقات من خلال تسجيل الدخول باسم "firebasesuperuser".
مطلوب لتثبيت الإضافات وإنشاء المخطّط الأوّلي ومنح أيّ من أدوار SQL القابلة للمنح للمستخدمين الآخرين.

إذا كان المستخدم غير المشرف بحاجة إلى امتيازات المستخدم المتميّز، ستتعذّر عملية نقل البيانات وسيُطلب من المستخدم أن يطلب من مشرف قاعدة البيانات (أي مستخدم لديه roles/cloudsql.admin) تنفيذ أوامر SQL المميّزة.
يتم منحه للمستخدمين الذين لديهم roles/cloudsql.admin ولا يمكن منحه مباشرةً من وحدة تحكّم Firebase.
Command الوصف

firebase dataconnect:sql:grant

العلامة/المَعلمة الوصف

-R أو --role role

دور SQL المطلوب منحه، وهو أحد الأدوار التالية: مالك أو كاتب أو قارئ

-E, --email email_address

عنوان البريد الإلكتروني لمستخدم أو حساب خدمة لمنح الدور له

الخيارات العامة

تنطبق الخيارات العامة التالية على جميع الأوامر:

  • تحوّل --json إخراج سطر الأوامر إلى تنسيق JSON لتحليله بواسطة أدوات أخرى.
  • تلغي --noninteractive و--interactive، حسب الحاجة، التعرّف التلقائي على البيئات غير المزوّدة بجهاز TTY.