تتيح لك واجهة سطر الأوامر Firebase إدارة مشاريعك على Firebase في دليل مشاريع محلي يمكن التحكّم في إصداراته. ويشمل ذلك Data Connect الخدمات في مشاريعك، والموصّلات الخاصة بهذه الخدمات، والموارد مثل مخطط قاعدة البيانات ومصادر طلبات البحث والتعديل لكل موصّل. تتيح لك واجهة سطر الأوامر أيضًا تثبيت محاكي Firebase Data Connect وتشغيله. تمثّل واجهة سطر الأوامر بديلاً فعالاً للعمل في Firebase.
للحصول على تعليمات حول تثبيت تجربة واجهة سطر الأوامر Firebase لبرنامج المعاينة الخاصة، وأوامر واجهة سطر الأوامر ذات الصلة Data Connect، راجِع مرجع واجهة سطر الأوامر.
يوثّق دليل المرجع هذا ما يلي:
- إدخالات خاصة بـ Data Connect في ملف إعداد مشروع
firebase.json
- إعدادات Data Connect في
dataconnect.yaml
وconnector.yaml
- أدوار إدارة الهوية وإمكانية الوصول (IAM) التي عليك ضبطها للمشاريع التي تستخدم Data Connect
ملفات إعداد مشروع Firebase
مرجع إعدادات firebase.json
استخدِم مفاتيح dataconnect
لإعداد خدمة واحدة أو أكثر من خدمات Data Connect
في مشروعك.
dataconnect: {
source: string // Path to the directory containing the dataconnect.yaml service file.
}
مرجع إعدادات dataconnect.yaml
يخزّن الملف dataconnect.yaml
معلومات الإعداد حول مواقع مصادر مخططات التطبيقات ومصادر الموصلات ومعلومات ربط مصادر البيانات. يعمل الملف أيضًا كمؤشر لدليل المشروع في واجهة سطر الأوامر Firebase.
يتحكّم المفتاح schemaValidation
في مستوى التحقّق من صحة المخطط الذي يتم تنفيذه
عند نقل المخططات أثناء عملية النشر. في حال عدم ضبط أي قيمة، يكون سلوك الأمر dataconect:sql:migrate
هو تطبيق التغييرات المتوافقة ومطالبتك بالتأكيد قبل تنفيذ أي تغييرات صارمة. عند ضبط هذا الخيار، يكون السلوك على النحو التالي:
- وضع
STRICT
يجب أن يتطابق مخطط قاعدة البيانات تمامًا مع مخطط التطبيق قبل أن يتم نشر مخطط التطبيق. سيتم حذف أي جداول أو أعمدة غير مستخدَمة في مخطط Data Connect من قاعدة البيانات. - وضع
COMPATIBLE
يجب أن يكون مخطط قاعدة البيانات متوافقًا مع مخطط التطبيق قبل أن يتم نشر مخطط التطبيق، ويُعدّ أي تغيير إضافي اختياريًا. يعني التوافق أنّ عمليات نقل البيانات الخاصة بالمخطط تستند إلى مخطط التطبيق الذي تكتبه. تظل العناصر في قاعدة البيانات التي لا يستخدمها مخطط التطبيق بدون تعديل. لذلك، بعد النشر، قد يحتوي الخلفية على مخططات وجداول وأعمدة غير مستخدَمة.
يتم توضيح قيم المفاتيح الأخرى في هذا الملف في التعليقات أدناه.
# The top-level Firebase Data Connect YAML file.
# The Firebase Data Connect API version to target.
# Optional. Defaults to the latest version.
specVersion: string
# The ID of the Firebase Data Connect service resource.
# Required.
serviceId: string
# The location of the Firebase Data Connect service.
# Required.
location: string
# Required.
schema:
# Relative path to directory for schema definitions.
# Recursively loads all .gql files in this directory.
# Optional. If not present, defaults to ./schema.
source: string
# Datasource connection information.
# Required.
datasource:
# Required.
postgresql:
# The name of the PostgreSQL database.
# Required.
database: string
cloudSql:
# The ID of the CloudSQL instance resource.
# Required.
instanceId: string
# Schema validation mode for schema migrations.
# Defaults to unspecified/commented out, meaning you are prompted to
# review all changes during migration.
# If desired, uncomment and indicate one of "STRICT" or "COMPATIBLE".
schemaValidation: string
# Required.
# Relative paths to directories for connector definitions.
# Recursively loads all .gql files in the listed directories.
# All directories specified MUST contain a connector.yaml file.
connectorDirs: [string]
يفترض ملف YAML بنية دليل تلقائية (قابلة للإعداد) على النحو التالي:
./(project root)
/dataconnect
dataconnect.yaml
/schema
*.gql
/connector
connector.yaml
*.gql
مرجع إعدادات connector.yaml
استخدِم connector.yaml
لضبط وضع المصادقة التلقائي وخيارات إنشاء حزمة تطوير البرامج (SDK).
# The connector-level YAML file.
# Required. The connector name of the Firebase Data Connect connector resource.
connectorId: string
# Optional. If not specified, no generated libraries (i.e. type-safe SDKs) will be generated.
generate:
# Optional.
javascriptSdk:
# Path to the directory that will be updated with the latest generated
# web SDK.
# Required.
- outputDir: string
# Path to your package.json directory. If specified, the new generated sdk will be installed in this path.
# Optional. If not provided, the package will not be auto-installed for you.
- packageJsonDir: string
# Name of the package to be created.
# Optional. Defaults to @firebasegen/<connectorID>
- package: string
<option>: string
# Optional.
swiftSdk:
# Path to the directory that will be updated with the latest generated
# iOS Swift SDK.
# Required.
- outputDir: string
# Name of the package to be created.
- package: string
<option>: string
# Optional.
kotlinSdk:
# Path to the directory that will be updated with the latest generated
# Android SDK.
# Required.
- outputDir: string
# Name of the package to be created.
- package: string
<option>: string
إعدادات إدارة الهوية وإمكانية الوصول لمشاريع Data Connect
أدوار دقيقة في "إدارة الهوية وإمكانية الوصول" للمنتج Data Connect
تتطابق الأدوار الأساسية والأدوار المحدّدة مسبقًا في Firebase مع الأدوار ذات المستوى الأدنى Data Connect. راجِع الجدول لمعرفة عملية الربط.
لإدارة عمليات تعيين أدوار "إدارة الهوية وإمكانية الوصول" الفردية في Data Connect بمستوى أكثر دقة، استخدِم وحدة تحكّم Google Cloud.
دور إدارة الهوية وإمكانية الوصول | الأذونات |
---|---|
firebasedataconnect.googleapis.com/admin مشرف واجهة برمجة التطبيقات Firebase Data Connect يتضمّن هذا الدور "مستخدِم واجهة برمجة التطبيقات Firebase Data Connect". وهي تعادل firebasedataconnect.* .يتم توفير هذا الدور من خلال أدوار "مالك السحابة" و"محرّر السحابة" و"مشرف Firebase" و"مشرف تطوير Firebase". |
إمكانية الوصول الكامل إلى موارد واجهة برمجة التطبيقات Firebase Data Connect، بما في ذلك البياناتfirebasedataconnect.googleapis.com/operations.delete firebasedataconnect.googleapis.com/operations.cancel firebasedataconnect.googleapis.com/services.create firebasedataconnect.googleapis.com/services.update firebasedataconnect.googleapis.com/services.delete firebasedataconnect.googleapis.com/services.executeGraphql firebasedataconnect.googleapis.com/services.executeGraphqlRead firebasedataconnect.googleapis.com/schemas.create firebasedataconnect.googleapis.com/schemas.update firebasedataconnect.googleapis.com/schemas.delete firebasedataconnect.googleapis.com/schemaRevisions.create firebasedataconnect.googleapis.com/schemaRevisions.delete firebasedataconnect.googleapis.com/connectors.create firebasedataconnect.googleapis.com/connectors.update firebasedataconnect.googleapis.com/connectors.delete firebasedataconnect.googleapis.com/connectorRevisions.create firebasedataconnect.googleapis.com/connectorRevisions.delete
|
firebasedataconnect.googleapis.com/viewer مُشاهد واجهة برمجة التطبيقات Firebase Data Connect يتم توفير هذا الدور من خلال أدوار "مالك السحابة" و"محرِّر السحابة" و"مُشاهد السحابة" و"مشرف Firebase" و"مُشاهد Firebase" و"مشرف تطوير Firebase" و"مُشاهد تطوير Firebase". |
إذن بالاطّلاع على موارد واجهة برمجة التطبيقات Firebase Data Connect API فقط لا يمنح الدور إذن الوصول إلى البيانات.cloudresourcemanager.googleapis.com/projects.list cloudresourcemanager.googleapis.com/projects.get firebasedataconnect.googleapis.com/operations.list firebasedataconnect.googleapis.com/operations.get firebasedataconnect.googleapis.com/locations.list firebasedataconnect.googleapis.com/locations.get firebasedataconnect.googleapis.com/services.list firebasedataconnect.googleapis.com/services.get firebasedataconnect.googleapis.com/schemas.list firebasedataconnect.googleapis.com/schemas.get firebasedataconnect.googleapis.com/schemaRevisions.list firebasedataconnect.googleapis.com/schemaRevisions.get firebasedataconnect.googleapis.com/connectors.list firebasedataconnect.googleapis.com/connectors.get firebasedataconnect.googleapis.com/connectorRevisions.list firebasedataconnect.googleapis.com/connectorRevisions.get
|
firebasedataconnect.googleapis.com/dataAdmin مشرف بيانات واجهة برمجة التطبيقات Firebase Data Connect يتم توفير هذا الدور من خلال أدوار مالك السحابة الإلكترونية ومحرِّر السحابة الإلكترونية ومشرف Firebase ومشرف تطوير Firebase. |
إذن كامل بالقراءة والكتابة في مصادر البياناتfirebasedataconnect.googleapis.com/services.executeGraphql firebasedataconnect.googleapis.com/services.executeGraphqlRead
|
firebasedataconnect.googleapis.com/dataViewer أداة عرض البيانات في Firebase Data Connect API يتم توفير هذه الأداة من خلال أدوار "مالك السحابة" و"محرِّر السحابة" و"مشرف Firebase" و"مشرف تطوير Firebase". |
إذن بالاطّلاع فقط على مصادر البياناتfirebasedataconnect.googleapis.com/services.executeGraphqlRead
|