Data Connect এর জন্য Firebase CLI কমান্ডের রেফারেন্স

Firebase CLI হল একটি টুল যা আপনাকে কমান্ড লাইন থেকে Firebase পণ্য এবং পরিষেবাগুলি পরিচালনা এবং কনফিগার করতে দেয়।

CLI কমান্ডগুলি প্রদান করে যা বিভিন্ন Data Connect কাজ সম্পাদন করতে ব্যবহার করা যেতে পারে, যেমন একটি নতুন Data Connect প্রজেক্ট তৈরি করা, একটি সংশ্লিষ্ট স্থানীয় ওয়ার্কিং ডিরেক্টরি শুরু করা, Data Connect এমুলেটর সেট আপ করা, Data Connect রিসোর্স তালিকা করা, ক্লায়েন্ট SDK তৈরি করা এবং আরও অনেক কিছু।

সেটআপ কমান্ড

একটি Firebase প্রকল্পে Data Connect যোগ করুন

firebase init

একটি নতুন স্থানীয় প্রকল্প কনফিগারেশন সেট আপ করতে firebase init ব্যবহার করুন। এই ওয়ার্কফ্লো আপনার ডিরেক্টরিতে Firebase কনফিগারেশন ফাইল তৈরি বা আপডেট করে।

firebase init

firebase init ফ্লো আপনাকে একটি পরিষেবা এবং ডাটাবেস সেট আপ করার জন্য এবং ঐচ্ছিকভাবে Data Connect এমুলেটর ইনস্টল করার এবং জেনারেট করা SDK কনফিগার করার মাধ্যমে গাইড করে।

পরিষেবা এবং ডাটাবেস সেটআপ

আপনি যদি পণ্য সেটআপের জন্য dataconnect নির্বাচন করেন, CLI আপনাকে একটি নতুন পরিষেবার নাম এবং অবস্থান এবং PostgreSQL দৃষ্টান্তের জন্য বিদ্যমান ক্লাউড SQL লিঙ্ক করতে বা একটি নতুন উদাহরণ তৈরি করতে অনুরোধ করে।

যদি একটি বিদ্যমান উদাহরণ লিঙ্ক করা হয়, CLI সামঞ্জস্যপূর্ণ সেটিংসের জন্য পরীক্ষা করে, যেমন IAM প্রমাণীকরণ এবং সর্বজনীন IP ঠিকানা।

Local Emulator Suite সেটআপ

CLI ফ্লো Data Connect এমুলেটর সহ এমুলেটর সেট আপ করার প্রস্তাব দেয়।

Data Connect এমুলেটর কমান্ড

Data Connect এমুলেটর শুরু করুন

এমুলেটর: স্টার্ট/এক্সেক

firebase emulators:start/exec

Data Connect এমুলেটরের Local Emulator Suite সংস্করণ ব্যবহার করুন ইন্টারেক্টিভ মোডে start বা স্ক্রিপ্ট-চালিত, exec সাথে অ-ইন্টারেক্টিভ মোডে।

স্কিমা এবং সংযোগকারী ব্যবস্থাপনা কমান্ড

এই বিভাগে CLI রেফারেন্স তথ্য রয়েছে যা আপনি স্কিমা এবং সংযোগকারী পরিচালনা করতে ব্যবহার করেন।

এই কমান্ডগুলির সাথে সম্পর্কিত ক্ষেত্রে কীভাবে ব্যবহার করবেন এবং প্রস্তাবিত অনুশীলনের জন্য, স্কিমা এবং সংযোগকারী পরিচালনার নির্দেশিকা দেখুন।

স্কিমা এবং সংযোগকারী সংস্থান স্থাপন করুন

স্থাপন

firebase deploy

এই কমান্ড Firebase.json- এ ইন্ডেক্স করা ডেটা কানেক্ট পরিষেবার জন্য সংস্থান স্থাপন করে। প্রয়োজনে স্কিমা মাইগ্রেশন করা হয়।

আদেশ বর্ণনা

ফায়ারবেস স্থাপন

পতাকা বর্ণনা

--শুধুমাত্র ডেটা সংযোগ

এই প্রকল্পের জন্য সমস্ত ডেটা কানেক্ট পরিষেবার জন্য স্কিমা এবং সংযোগকারী স্থাপন করুন, কিন্তু অন্যান্য Firebase পণ্য সংস্থান স্থাপন করবেন না।

--শুধুমাত্র ডেটাকানেক্ট:সার্ভিসআইডি

নির্দিষ্ট ডেটা সংযোগ পরিষেবার জন্য স্কিমা এবং সংযোগকারী স্থাপন করুন৷

--শুধুমাত্র ডেটাকানেক্ট:সার্ভিসআইডি:কানেক্টরআইডি

নির্দিষ্ট ডেটা সংযোগ পরিষেবার জন্য একটি একক সংযোগকারী স্থাপন করুন৷

--শুধুমাত্র ডেটাকানেক্ট:সার্ভিসআইডি:স্কিমা

নির্দিষ্ট ডেটা সংযোগ পরিষেবার জন্য স্কিমা স্থাপন করুন৷

–-only পতাকাগুলির সাথে, আপনি আপনার পছন্দের সংস্থানগুলির যে কোনও উপসেট স্থাপন করতে কমা-বিচ্ছিন্ন মানগুলি পাস করতে পারেন।

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

ডেটা কানেক্ট পরিষেবা, স্কিমা এবং সংযোগকারীর তালিকা করুন

dataconnect:services:list

firebase dataconnect:services:list

এই কমান্ডটি একটি প্রকল্পে স্থাপন করা পরিষেবা, স্কিমা এবং সংযোগকারী সম্পর্কে প্রাথমিক তথ্য প্রিন্ট করে।

তুলনা করুন এবং SQL স্কিমা স্থানান্তর করুন

dataconnect:sql:diff

firebase dataconnect:sql:diff

এই কমান্ডটি একটি পরিষেবার জন্য স্থানীয় স্কিমাকে সংশ্লিষ্ট ক্লাউড SQL ডাটাবেসের বর্তমান স্কিমার সাথে তুলনা করে। এটি আপনার নতুন স্কিমাতে ডাটাবেস স্থানান্তর করতে চালিত কমান্ডগুলি প্রিন্ট করে।

আদেশ বর্ণনা

firebase dataconnect:sql:diff

পতাকা/প্যারামিটার বর্ণনা

serviceId

পরিষেবাটি নির্দিষ্ট করুন। যদি বাদ দেওয়া হয়, firebase.json-এ সমস্ত পরিষেবার জন্য পার্থক্য প্রিন্ট করুন।

dataconnect:sql:migrate

firebase dataconnect:sql:migrate

এই কমান্ডটি একটি পরিষেবার ক্লাউড SQL ডাটাবেসে স্থানীয় স্কিমা পরিবর্তনগুলি প্রয়োগ করে৷

আপনি যখন একটি নতুন স্থানীয় Data Connect প্রকল্প সেট আপ করেন, ডিফল্ট dataconnect.yaml ফাইলের সাথে, dataconect:sql:migrate কমান্ডের আচরণটি আপনাকে যেকোন প্রয়োজনীয় পরিবর্তনের জন্য অনুরোধ জানানো হয় এবং তারপর পরিবর্তনগুলি কার্যকর করার আগে যেকোনো ঐচ্ছিক পরিবর্তনের জন্য অনুরোধ জানানো হয়। . আপনি আপনার dataconnect.yaml কনফিগারেশন আপডেট করে ঐচ্ছিক পরিবর্তনগুলিকে সর্বদা অন্তর্ভুক্ত বা উপেক্ষা করার জন্য এই আচরণটি সংশোধন করতে পারেন, যেমনটি কঠোর বা সামঞ্জস্যপূর্ণ মোডে স্কিমা স্থানান্তর করার বিষয়ে আলোচনা করা হয়েছে

ইন্টারেক্টিভ পরিবেশে, CLI প্রতিটি মাইগ্রেশন SQL স্টেটমেন্ট প্রদর্শন করে (এবং এটি ধ্বংসাত্মক কিনা) এবং আপনি যে পরিবর্তনগুলি প্রয়োগ করতে চান তার জন্য অনুরোধ করে। --force পতাকা পাস করা সমস্ত প্রম্পট গ্রহণ করার সমতুল্য।

আন্তঃক্রিয়াশীল পরিবেশে:

  • --force ছাড়া, শুধুমাত্র অ-ধ্বংসাত্মক পরিবর্তন করা হয়। যদি ধ্বংসাত্মক পরিবর্তন হয়, CLI কোনো পরিবর্তন না করেই বাতিল হয়ে যায়।
  • --force দিয়ে, সমস্ত পরিবর্তন করা হয়। যদি এর মধ্যে কোনো ধ্বংসাত্মক পরিবর্তন অন্তর্ভুক্ত থাকে, তাহলে সেগুলি মুদ্রিত হবে এবং --force পতাকা প্রদান না করা পর্যন্ত আপনি চালিয়ে যেতে চান কিনা তা আপনাকে অনুরোধ করা হবে।
আদেশ বর্ণনা

firebase dataconnect:sql:migrate

পতাকা বর্ণনা

serviceId

নির্দিষ্ট পরিষেবার জন্য ডাটাবেস স্থানান্তর করুন. আপনার প্রকল্পে শুধুমাত্র একটি পরিষেবা থাকলে serviceId অনুমান করা হয়।

-- বল

স্বয়ংক্রিয়ভাবে অনুরোধ গ্রহণ.

অন্যান্য --only পতাকার মতো, আপনি কমা দ্বারা পৃথক করা একাধিক পরিষেবা প্রদান করতে পারেন।

কঠোর বা সামঞ্জস্যপূর্ণ মোডে একটি স্কিমা স্থানান্তর করুন

Data Connect স্কিমা মাইগ্রেশনের দুটি ভিন্ন স্কিমা বৈধতা মোড রয়েছে: কঠোর এবং সামঞ্জস্যপূর্ণ । কঠোর মোড যাচাইকরণের জন্য অ্যাপ্লিকেশন স্কিমা স্থাপন করার আগে ডাটাবেস স্কিমাটি অ্যাপ্লিকেশন স্কিমার সাথে ঠিক মেলে। সামঞ্জস্যপূর্ণ মোড যাচাইকরণের জন্য ডাটাবেস স্কিমা অ্যাপ্লিকেশন স্কিমার সাথে সামঞ্জস্যপূর্ণ হতে হবে, যার অর্থ আপনার ডাটাবেসের উপাদানগুলি যা আপনার অ্যাপ্লিকেশন স্কিমা দ্বারা ব্যবহৃত হয় না সেগুলি অপরিবর্তিত রেখে দেওয়া হয়৷

এই স্কিমা বৈধকরণ মোড এবং স্কিমা মাইগ্রেশনের জন্য সর্বোত্তম অনুশীলনগুলি স্কিমা এবং সংযোগকারী পরিচালনার গাইডে কভার করা হয়েছে

আপনার dataconnect.yaml ফাইলে schemaValidation কী ব্যবহার করে বৈধকরণ মোড সংজ্ঞায়িত করা হয়েছে। schemaValidation অনির্দিষ্ট থাকলে, CLI সামঞ্জস্যপূর্ণ পরিবর্তনগুলি প্রয়োগ করে এবং কোনো কঠোর পরিবর্তন কার্যকর করার আগে আপনাকে অনুরোধ করে। কনফিগারেশন রেফারেন্স দেখুন।

SDK কমান্ড

SDK তৈরি করুন

dataconnect:sdk:generate

firebase dataconnect:sdk:generate

এই কমান্ডটি connector.yaml- এ ঘোষিত টাইপ করা SDK তৈরি করে।

এছাড়াও ওয়েব SDK , Android SDK এবং iOS SDK-এর সাথে কাজ করার জন্য নির্দেশিকাগুলি দেখুন৷

আদেশ বর্ণনা

ফায়ারবেস ডেটা সংযোগ: এসডিকে: জেনারেট

পতাকা বর্ণনা

--ঘড়ি

প্রক্রিয়াটি চলমান রাখে এবং যখনই আপনি আপনার স্কিমা এবং সংযোগকারী GQL ফাইলগুলিতে পরিবর্তনগুলি সংরক্ষণ করেন তখনই নতুন SDK তৈরি করে৷

যদি প্রজন্ম ব্যর্থ হয়, ত্রুটিগুলি stdout এ প্রিন্ট করা হবে, জেনারেট করা কোডটি পরিবর্তন করা হবে না এবং কমান্ডটি চলতে থাকবে।

--শুধু সংযোগকারী আইডি:প্ল্যাটফর্ম

শুধুমাত্র একটি একক প্ল্যাটফর্ম এবং একক সংযোগকারীর জন্য SDK তৈরি করুন৷

–only পতাকাগুলির সাথে, আপনি কমা-বিচ্ছিন্ন মানগুলি পাস করতে পারেন৷

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

ক্লাউড এসকিউএল ম্যানেজমেন্ট কমান্ড

ক্লাউড এসকিউএল-এর জন্য SQL ভূমিকা প্রদান করুন

dataconnect:sql:grant

firebase dataconnect:sql:grant

ক্লাউড এসকিউএল-এ হোস্ট করা আপনার নিজস্ব PostgreSQL উদাহরণের উপরে Data Connect কাজ করে। কিছু ক্ষেত্রে, আপনি আপনার Data Connect অ্যাপস দ্বারা উত্পন্ন ডেটা অনুসন্ধান বা আপডেট করতে সরাসরি আপনার ডাটাবেস অ্যাক্সেস করতে চাইতে পারেন৷ এটি করার জন্য, আপনাকে প্রয়োজনীয় ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টে এই বিভাগে সংজ্ঞায়িত ভূমিকাগুলির একটি প্রদান করতে হবে।

প্রদত্ত ভূমিকার বিস্তারিত জানার জন্য, PostgreSQL ব্যবহারকারীর ভূমিকা দেখুন।

ভূমিকা এসকিউএল ভূমিকা অনুমতি ব্যবহার অনুদানযোগ্য
পাঠক 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 ডাটাবেসে সম্পূর্ণ সুবিধা সহ অন্তর্নির্মিত সুপার ইউজার ভূমিকা।

মালিকের অনুমতি ছাড়াও, এটি স্কিমা তৈরি করতে পারে, স্কিমা ড্রপ করতে পারে, এক্সটেনশন ইনস্টল করতে পারে এবং অন্য কোন প্রশাসনিক কাজ সম্পাদন করতে পারে।

"firebasessuperuser" হিসাবে লগ ইন করে CLI-তে অ্যাক্সেস করা হয়েছে।
এক্সটেনশন ইনস্টল করার জন্য, প্রাথমিক স্কিমা তৈরি করার জন্য এবং অন্যান্য ব্যবহারকারীদেরকে যে কোনো মঞ্জুরযোগ্য SQL ভূমিকা প্রদানের জন্য প্রয়োজনীয়।

যদি একজন নন-অ্যাডমিন ব্যবহারকারীর সুপার-ইউজার বিশেষাধিকারের প্রয়োজন হয়, মাইগ্রেশন ব্যর্থ হবে এবং ব্যবহারকারীকে ডাটাবেস অ্যাডমিনিস্ট্রেটরকে (অর্থাৎ, roles/cloudsql.admin সহ একজন ব্যবহারকারী) বিশেষাধিকারপ্রাপ্ত SQL কমান্ড চালানোর জন্য অনুরোধ করবে।
roles/cloudsql.admin সহ ব্যবহারকারীদের মঞ্জুর করা হয়েছে এবং Firebase CLI থেকে সরাসরি মঞ্জুর করা যাবে না
আদেশ বর্ণনা

firebase dataconnect:sql:grant

পতাকা/প্যারামিটার বর্ণনা

-আর, --ভূমিকা

মঞ্জুর করার জন্য SQL ভূমিকা, যার মধ্যে একটি: মালিক, লেখক বা পাঠক৷

-ই, --ইমেইল ইমেইল_ঠিকানা

ভূমিকা প্রদানের জন্য একটি ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টের জন্য ইমেল।

গ্লোবাল অপশন

নিম্নলিখিত বিশ্বব্যাপী বিকল্পগুলি সমস্ত কমান্ডের জন্য প্রযোজ্য:

  • --json অন্যান্য টুল দ্বারা পার্স করার জন্য CLI আউটপুট JSON এ স্যুইচ করে।
  • --noninteractive এবং --interactive override, প্রয়োজন অনুযায়ী, অ-TTY পরিবেশের স্বয়ংক্রিয় সনাক্তকরণ।