مرجع فرمان Firebase CLI برای Data Connect

Firebase CLI ابزاری است که به شما امکان می دهد محصولات و خدمات Firebase را از طریق خط فرمان مدیریت و پیکربندی کنید.

CLI دستوراتی را ارائه می دهد که می توانند برای انجام انواع وظایف Data Connect مانند ایجاد یک پروژه Data Connect جدید، مقداردهی اولیه یک فهرست کاری محلی مربوطه، راه اندازی شبیه ساز Data Connect ، فهرست کردن منابع Data Connect ، تولید SDK های مشتری و غیره استفاده شوند.

دستورات راه اندازی

Data Connect به پروژه Firebase اضافه کنید

firebase init

از firebase init برای تنظیم یک پیکربندی پروژه محلی جدید استفاده کنید. این گردش کار فایل های پیکربندی Firebase را در دایرکتوری شما ایجاد یا به روز می کند.

firebase init

جریان firebase init شما را از طریق راه‌اندازی یک سرویس و پایگاه داده و نصب اختیاری شبیه‌ساز Data Connect و پیکربندی SDK‌های تولید شده راهنمایی می‌کند.

راه اندازی سرویس و پایگاه داده

اگر dataconnect برای راه‌اندازی محصول انتخاب کنید، CLI از شما می‌خواهد یک نام و مکان سرویس جدید و اینکه آیا Cloud SQL موجود را برای نمونه PostgreSQL پیوند دهید یا یک نمونه جدید ایجاد کنید.

اگر یک نمونه موجود پیوند داده شده باشد، CLI تنظیمات سازگار، مانند احراز هویت IAM و آدرس‌های IP عمومی را بررسی می‌کند.

راه اندازی Local Emulator Suite

جریان CLI راه اندازی شبیه سازها، از جمله شبیه ساز Data Connect را ارائه می دهد.

دستورات شبیه ساز Data Connect

شبیه ساز Data Connect را راه اندازی کنید

شبیه سازها: start/exec

firebase emulators:start/exec

از نسخه Local Emulator Suite شبیه ساز Data Connect در حالت تعاملی با حالت start یا غیر تعاملی مبتنی بر اسکریپت با exec استفاده کنید.

دستورات مدیریت طرحواره و رابط

این بخش حاوی اطلاعات مرجع CLI برای دستوراتی است که برای مدیریت طرحواره ها و کانکتورها استفاده می کنید.

برای نحوه استفاده از موارد و اقدامات توصیه شده مرتبط با این دستورات، به راهنمای مدیریت طرحواره و رابط مراجعه کنید.

منابع طرحواره و رابط را مستقر کنید

استقرار

firebase deploy

این دستور منابعی را برای سرویس های Data Connect نمایه شده در firebase.json مستقر می کند. در صورت لزوم یک مهاجرت طرحواره انجام می شود.

فرمان توضیحات

استقرار firebase

پرچم توضیحات

– فقط اتصال داده

طرح‌واره‌ها و رابط‌ها را برای همه سرویس‌های Data Connect برای این پروژه مستقر کنید، اما دیگر منابع محصول Firebase را مستقر نکنید.

–-only dataconnect: serviceId

طرح و رابط‌ها را برای سرویس Data Connect مشخص شده استقرار دهید.

–-only dataconnect:serviceId:connectorId

یک رابط واحد را برای سرویس داده اتصال مشخص شده استقرار دهید.

–-only dataconnect:serviceId:schema

طرح واره را برای سرویس Data Connect مشخص شده استقرار دهید.

با پرچم‌های –-only ، می‌توانید مقادیر جدا شده با کاما را برای استقرار زیرمجموعه‌ای از منابعی که می‌خواهید ارسال کنید.

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

خدمات، طرحواره‌ها و رابط‌های اتصال داده را فهرست کنید

dataconnect:services:list

firebase dataconnect:services:list

این دستور اطلاعات اولیه در مورد سرویس ها، طرحواره ها و رابط های مستقر در یک پروژه را چاپ می کند.

مقایسه و انتقال طرحواره های SQL

dataconnect:sql:diff

firebase dataconnect:sql:diff

این دستور شمای محلی یک سرویس را با طرح فعلی پایگاه داده Cloud SQL مربوطه مقایسه می کند. دستوراتی را که برای انتقال پایگاه داده به طرحواره جدید شما اجرا می شوند چاپ می کند.

فرمان توضیحات

firebase dataconnect:sql:diff

پرچم/پارامتر توضیحات

شناسه سرویس

سرویس را مشخص کنید. در صورت حذف، تفاوت را برای همه خدمات در firebase.json چاپ کنید.

dataconnect:sql:migrate

firebase dataconnect:sql:migrate

این دستور تغییرات طرح واره محلی را در پایگاه داده Cloud SQL سرویس اعمال می کند.

هنگامی که یک پروژه محلی Data Connect را با فایل پیش‌فرض dataconnect.yaml راه‌اندازی می‌کنید، رفتار دستور dataconect:sql:migrate به این صورت است که هر گونه تغییر مورد نیاز را از شما می‌خواهد، و سپس هر تغییر اختیاری را قبل از اجرای تغییرات از شما می‌خواهد. . می‌توانید با به‌روزرسانی پیکربندی dataconnect.yaml ، این رفتار را طوری تغییر دهید که همیشه تغییرات اختیاری را شامل شود یا نادیده بگیرد، همانطور که در انتقال یک طرحواره در حالت سخت یا سازگار بحث شده است.

در محیط های تعاملی، CLI هر دستور SQL مهاجرت (و اینکه آیا مخرب است) را نمایش می دهد و تغییراتی را که می خواهید اعمال کنید را درخواست می کند. عبور از پرچم --force معادل پذیرش همه دستورات است.

در محیط های غیر تعاملی:

  • بدون --force فقط تغییرات غیر مخرب ایجاد می شود. اگر تغییرات مخربی وجود داشته باشد، CLI بدون هیچ تغییری سقط می شود.
  • با --force همه تغییرات انجام می شود. اگر این شامل هر گونه تغییرات مخرب باشد، آنها چاپ می شوند و از شما خواسته می شود که آیا می خواهید ادامه دهید، مگر اینکه پرچم --force ارائه شده باشد.
فرمان توضیحات

firebase dataconnect:sql:migrate

پرچم توضیحات

شناسه سرویس

پایگاه داده را برای سرویس مشخص شده منتقل کنید. serviceId در صورتی استنباط می شود که پروژه شما فقط یک سرویس داشته باشد.

-- زور

به طور خودکار درخواست ها را می پذیرد.

همانند سایر پرچم‌های --only ، می‌توانید چندین سرویس را ارائه دهید که با کاما از هم جدا شده‌اند.

یک طرحواره را در حالت سخت یا سازگار منتقل کنید

انتقال طرحواره Data Connect دو حالت اعتبارسنجی طرحواره متفاوت دارد: سخت و سازگار . اعتبار سنجی حالت دقیق مستلزم آن است که طرح پایگاه داده دقیقاً با طرح برنامه مطابقت داشته باشد قبل از اینکه طرحواره برنامه قابل استقرار باشد. اعتبار سنجی حالت سازگار مستلزم آن است که طرح پایگاه داده با طرح برنامه سازگار باشد، به این معنی که عناصر موجود در پایگاه داده شما که توسط طرح برنامه شما استفاده نمی شوند، بدون تغییر باقی می مانند.

این حالت‌های اعتبارسنجی طرحواره و بهترین روش‌ها برای مهاجرت طرحواره در راهنمای مدیریت طرح‌واره و رابط پوشش داده شده است.

حالت اعتبار سنجی با استفاده از کلید schemaValidation در فایل dataconnect.yaml شما تعریف می شود. اگر schemaValidation نامشخص باشد، CLI تغییرات سازگار را اعمال می کند و قبل از اجرای هر گونه تغییر سختگیرانه از شما درخواست می کند. مرجع پیکربندی را ببینید.

دستورات SDK

SDK ها را ایجاد کنید

dataconnect:sdk:generate

firebase dataconnect:sdk:generate

این دستور SDKهای تایپ شده اعلام شده در connector.yaml را تولید می کند.

همچنین به راهنماهای کار با وب SDK ، Android SDK و iOS SDK مراجعه کنید.

فرمان توضیحات

firebase dataconnect:sdk:generate

پرچم توضیحات

--- تماشا کنید

هر زمان که تغییرات را در فایل های GQL طرحواره و رابط خود ذخیره می کنید، فرآیند را در حال اجرا نگه می دارد و SDK های جدید تولید می کند.

اگر تولید ناموفق باشد، خطاها در stdout چاپ می‌شوند، کد تولید شده تغییر نمی‌کند و دستور به اجرا ادامه می‌دهد.

–-only connectorId:platform

فقط برای یک پلتفرم و یک کانکتور SDK تولید کنید.

با پرچم های –only ، می توانید مقادیر جدا شده با کاما را ارسال کنید.

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

دستورات مدیریت ابر 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> صاحب طرحواره.

دارای تمام امتیازات در تمام جداول و توالی های موجود در طرحواره.
این نقش، در ترکیب نقش IAM roles/cloudsql.client ، اجازه انجام مهاجرت در پایگاه داده را می دهد.

به عنوان مثال، هنگام فراخوانی firebase dataconnect:sql:migrate .
بله
ابر کاربر cloudsqlsuperuser نقش سوپرکاربر داخلی با امتیازات کامل در پایگاه داده.

علاوه بر مجوزهای مالک، می‌تواند طرحواره ایجاد کند، طرح‌واره‌ها را رها کند، برنامه‌های افزودنی را نصب کند، و هر کار اداری دیگری را انجام دهد.

با ورود به عنوان "firebasesuperuser" در CLI قابل دسترسی است.
برای نصب برنامه‌های افزودنی، ایجاد طرح اولیه، و اعطای هر یک از نقش‌های SQL قابل اعطای به سایر کاربران مورد نیاز است.

اگر یک کاربر غیر ادمین به امتیازات superuser نیاز داشته باشد، انتقال ناموفق خواهد بود و از کاربر می خواهد که از مدیر پایگاه داده (به عنوان مثال، کاربری با roles/cloudsql.admin ) بخواهد دستورات SQL ممتاز را اجرا کند.
به کاربران دارای roles/cloudsql.admin اعطا می شود و نمی توان مستقیماً از Firebase CLI اعطا کرد
فرمان توضیحات

firebase dataconnect:sql:grant

پرچم/پارامتر توضیحات

-R، -نقش نقش

نقش SQL برای اعطا، یکی از: مالک، نویسنده یا خواننده.

-E، --email_address

ایمیل برای یک حساب کاربری یا سرویس که می‌توانید نقش را به آن اعطا کنید.

گزینه های جهانی

گزینه های جهانی زیر برای همه دستورات اعمال می شود:

  • --json خروجی CLI را برای تجزیه توسط ابزارهای دیگر به JSON تغییر می دهد.
  • --noninteractive و --interactive در صورت نیاز، شناسایی خودکار محیط های غیر TTY را لغو می کند.