Firebase CLI রেফারেন্স

Firebase CLI (GitHub) Firebase প্রোজেক্টে ম্যানেজ করা, দেখা ও ডিপ্লয় করার জন্য বিভিন্ন ধরনের টুল প্রদান করে।

Firebase CLI ব্যবহার করার আগে, Firebase প্রোজেক্ট সেট-আপ করুন।

CLI সেট-আপ বা আপডেট করা

Firebase CLI ইনস্টল করুন

আপনার অপারেটিং সিস্টেম, অভিজ্ঞতার লেভেল এবং/অথবা ব্যবহারের ক্ষেত্রে উপযুক্ত কোনও পদ্ধতি ব্যবহার করে আপনি Firebase CLI ইনস্টল করতে পারবেন। আপনি যেভাবে CLI ইনস্টল করুন না কেন, আপনার কাছে একই ফাংশনালিটি এবং firebase কমান্ডের অ্যাক্সেস থাকবে।

আপনার প্রোজেক্ট ফাইল যোগ করলে, এটি দ্রুত শুরু করার একটি সুবিধাজনক বিকল্প হয়ে ওঠে।

Windows macOS Linux

Windows

আপনি Windows-এর জন্য Firebase CLI ইনস্টল করতে, নিম্নলিখিত বিকল্পগুলির মধ্যে একটি ব্যবহার করতে পারেন:

বিকল্প বিবরণ এগুলির জন্য সাজেস্ট করা হয়...
স্ট্যান্ডঅ্যালোন বাইনারি CLI-এর জন্য স্ট্যান্ডঅ্যালোন বাইনারি ডাউনলোড করুন। তারপরে, আপনি firebase কমান্ড চালানোর জন্য শেল খুলতে এক্সিকিউটেবল অ্যাক্সেস করতে পারবেন। নতুন ডেভেলপার

যেসব ডেভেলপার Node.js ব্যবহার করেন না বা এর সাথে পরিচিত নন
npm CLI ইনস্টল করতে এবং গ্লোবালি উপলভ্য firebase কমান্ড চালু করতে npm (Node Package Manager) ব্যবহার করুন। ডেভেলপাররা Node.js ব্যবহার করছেন

স্ট্যান্ডঅ্যালোন বাইনারি

Firebase CLI-এর জন্য বাইনারি ডাউনলোড ও রান করতে, এইসব ধাপ অনুসরণ করুন:

  1. FirebaseWindows-এর জন্য CLI বাইনারি ডাউনলোড করুন।

  2. firebase কমান্ড চালানোর জন্য শেল খুলতে বাইনারি অ্যাক্সেস করুন।

  3. CLI-তে লগ-ইন করে পরীক্ষা করা চালিয়ে যান।

npm

Firebase CLI ইনস্টল করতে npm (নোড প্যাকেজ ম্যানেজার) ব্যবহার করতে, এইসব ধাপ অনুসরণ করুন:

  1. nvm-windows (Node ভার্সন ম্যানেজার) ব্যবহার করে Node.js ইনস্টল করুন। Node.js ইনস্টল করলে, npm কমান্ড টুল অটোমেটিক ইনস্টল হয়ে যায়।

  2. নিচের কমান্ডটি রান করে npm-এর মাধ্যমে Firebase CLI ইনস্টল করুন:

    npm install -g firebase-tools

    এই কমান্ড বিশ্বব্যাপী উপলভ্য firebase কমান্ড চালু করে।

  3. CLI-তে লগ-ইন করে পরীক্ষা করা চালিয়ে যান।

macOS বা Linux

আপনি নিম্নলিখিত বিকল্পগুলির মধ্যে একটি ব্যবহার করে macOS বা Linux-এর জন্য Firebase CLI ইনস্টল করতে পারেন:

বিকল্প বিবরণ এগুলির জন্য সাজেস্ট করা হয়...
অটোমেটিক ইনস্টল স্ক্রিপ্ট এমন একটি কমান্ড চালান যা আপনার অপারেটিং সিস্টেম অটোমেটিক শনাক্ত করে, লেটেস্ট CLI রিলিজ ডাউনলোড করে, তারপর বিশ্বব্যাপী উপলভ্য firebase কমান্ড চালু করে। নতুন ডেভেলপার

যেসব ডেভেলপার Node.js ব্যবহার করেন না বা এর ব্যাপারে জানেন না

একটি CI/CD এনভায়রনমেন্টে অটোমেটিক ডিপ্লয়
স্ট্যান্ডঅ্যালোন বাইনারি CLI-এর জন্য স্ট্যান্ডঅ্যালোন বাইনারি ডাউনলোড করুন। তারপর, আপনার ওয়ার্কফ্লোর সাথে মানানসই বাইনারি কনফিগার ও রান করতে পারবেন। CLI ব্যবহার করে সম্পূর্ণ কাস্টমাইজ করা যায় এমন ওয়ার্কফ্লো
npm CLI ইনস্টল করতে এবং গ্লোবালি উপলভ্য firebase কমান্ড চালু করতে npm (Node Package Manager) ব্যবহার করুন। ডেভেলপাররা Node.js ব্যবহার করছেন

অটোমেটিক ইনস্টল স্ক্রিপ্ট

অটোমেটিক ইনস্টল স্ক্রিপ্ট ব্যবহার করে Firebase CLI ইনস্টল করতে, এইসব ধাপ অনুসরণ করুন:

  1. নিম্নলিখিত cURL কমান্ড রান করুন:

    curl -sL https://firebase.tools | bash

    এই স্ক্রিপ্ট আপনার অপারেটিং সিস্টেম অটোমেটিক শনাক্ত করে, লেটেস্ট Firebase CLI রিলিজ ডাউনলোড করে, তারপর বিশ্বব্যাপী উপলভ্য firebase কমান্ড চালু করে।

  2. CLI-তে লগ-ইন করে পরীক্ষা করা চালিয়ে যান।

অটোমেটিক ইনস্টল স্ক্রিপ্ট সম্পর্কে আরও উদাহরণ ও বিবরণের জন্য, firebase.tools-এ স্ক্রিপ্টের সোর্স কোড দেখুন।

স্ট্যান্ডঅ্যালোন বাইনারি

আপনার OS-এর জন্য নির্দিষ্ট Firebase CLI-এর বাইনারি ডাউনলোড ও রান করতে এইসব ধাপ অনুসরণ করুন:

  1. আপনার OS-এর জন্য Firebase CLI বাইনারি ডাউনলোড করুন: macOS | Linux

  2. (ঐচ্ছিক) বিশ্বব্যাপী উপলভ্য firebase কমান্ড সেট-আপ করুন।

    1. chmod +x ./firebase_tools রান করিয়ে বাইনারি এক্সিকিউটেবল করুন।
    2. আপনার PATH-এ বাইনারির পাথ যোগ করুন।
  3. CLI-তে লগ-ইন করে পরীক্ষা করা চালিয়ে যান।

npm

Firebase CLI ইনস্টল করতে npm (নোড প্যাকেজ ম্যানেজার) ব্যবহার করতে, এইসব ধাপ অনুসরণ করুন:

  1. nvm (Node ভার্সন ম্যানেজার) ব্যবহার করে Node.js ইনস্টল করুন।
    Node.js ইনস্টল করলে npm কমান্ড টুল অটোমেটিক ইনস্টল হয়ে যায়।

  2. নিচের কমান্ডটি রান করে npm-এর মাধ্যমে Firebase CLI ইনস্টল করুন:

    npm install -g firebase-tools

    এই কমান্ড বিশ্বব্যাপী উপলভ্য firebase কমান্ড চালু করে।

  3. CLI-তে লগ-ইন করে পরীক্ষা করা চালিয়ে যান।

লগ-ইন করে Firebase CLI পরীক্ষা করুন

CLI ইনস্টল করার পরে, আপনাকে অবশ্যই যাচাই করতে হবে। তারপরে, আপনার Firebase প্রোজেক্টের তালিকা তৈরি করে আপনি যাচাইকরণ কনফার্ম করতে পারবেন।

  1. নিম্নলিখিত কমান্ড চালিয়ে আপনার Google অ্যাকাউন্ট ব্যবহার করে Firebase-এ লগ-ইন করুন:

    firebase login

    এই কমান্ড আপনার লোকাল মেশিনকে Firebase-এর সাথে কানেক্ট করে এবং আপনার Firebase প্রোজেক্টে অ্যাক্সেস দেয়।

  2. CLI সঠিকভাবে ইনস্টল করা হয়েছে কিনা এবং আপনার Firebase প্রোজেক্টের তালিকা তৈরি করার মাধ্যমে আপনার অ্যাকাউন্ট অ্যাক্সেস করছে কিনা তা পরীক্ষা করুন। নিম্নলিখিত কমান্ড রান করুন:

    firebase projects:list

    Firebase কনসোলে তালিকাভুক্ত Firebase প্রোজেক্টের সাথে দেখানো তালিকাটি একই হতে হবে।

লেটেস্ট CLI ভার্সনে আপডেট করুন

সাধারণত, আপনি সবচেয়ে আপ-টু-ডেট Firebase CLI ভার্সন ব্যবহার করতে চাইবেন।

আপনি কীভাবে CLI ভার্সন আপডেট করবেন তা আপনার অপারেটিং সিস্টেম এবং কীভাবে CLI ইনস্টল করেছেন তার উপর নির্ভর করে।

জানলা

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 ইনস্টল করেছেন তার উপর নির্ভর করে।

জানলা

  • স্ট্যান্ডঅ্যালোন বাইনারি: আপনার ডাউনলোড করা 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 রান করুন

CI সিস্টেমের সাথে CLI ব্যবহার করা

CI সিস্টেমের সাথে CLI ব্যবহার করার সময় আমরা আপনাকে অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়াল ব্যবহার করে যাচাই করিয়ে নেওয়ার সাজেশন দিই।

(সাজেস্ট করা) অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়াল ব্যবহার করুন

Firebase CLI, অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়াল সেট করা থাকলে তা শনাক্ত করে ব্যবহার করবে। CI এবং অন্যান্য হেডলেস এনভায়রনমেন্টে CLI যাচাই করার সবচেয়ে সহজ উপায় হল অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়াল সেট-আপ করা।

(পুরনো) FIREBASE_TOKEN ব্যবহার করুন

বিকল্প হিসেবে, আপনি FIREBASE_TOKEN ব্যবহার করে যাচাই করতে পারবেন। এটি অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়ালের চেয়ে কম নিরাপদ এবং আর সাজেস্ট করা হয় না।

  1. ব্রাউজার আছে এমন কোনও মেশিনে, Firebase CLI ইনস্টল করুন।

  2. নিচের কমান্ডটি রান করে সাইন-ইন প্রসেস শুরু করুন:

    firebase login:ci
  3. প্রদত্ত URL-এ যান, তারপর Google অ্যাকাউন্ট ব্যবহার করে লগ-ইন করুন।

  4. নতুন রিফ্রেশ টোকেন প্রিন্ট করুন। বর্তমান CLI সেশন প্রভাবিত হবে না।

  5. আপনার CI সিস্টেমে আউটপুট টোকেন সুরক্ষিত কিন্তু অ্যাক্সেসযোগ্য উপায়ে স্টোর করুন।

  6. firebase কমান্ড চালানোর সময় এই টোকেন ব্যবহার করুন। আপনি নিম্নলিখিত দুটি বিকল্পের মধ্যে যেকোনও একটি ব্যবহার করতে পারেন:

    • বিকল্প ১: এনভায়রনমেন্ট ভেরিয়েবেল হিসেবে টোকেন সেভ করুন FIREBASE_TOKEN। আপনার সিস্টেম অটোমেটিক টোকেন ব্যবহার করবে।

    • বিকল্প ২: আপনার CI সিস্টেমে --token TOKEN ফ্ল্যাগ সহ সব firebase কমান্ড রান করান।
      টোকেন লোডিংয়ের ক্ষেত্রে অগ্রাধিকারের ক্রম হল: ফ্ল্যাগ, এনভায়রনমেন্ট ভেরিয়েবল, পছন্দসই Firebase প্রোজেক্ট।

Firebase প্রোজেক্ট শুরু করা

Firebase প্রোজেক্টে ডিপ্লয় করার মতো CLI ব্যবহার করে করা অনেক সাধারণ টাস্কের জন্য প্রোজেক্ট ডিরেক্টরি প্রয়োজন হয়। আপনি firebase init কমান্ড ব্যবহার করে একটি প্রোজেক্ট ডিরেক্টরি তৈরি করেন। প্রোজেক্ট ডিরেক্টরি সাধারণত আপনার সোর্স কন্ট্রোল রুটের ডিরেক্টরির মতোই হয় এবং firebase init চালানোর পরে, ডিরেক্টরিটিতে firebase.json কনফিগারেশন ফাইল থাকে।

নতুন Firebase প্রোজেক্ট শুরু করতে, আপনার অ্যাপের ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড রান করান:

firebase init

firebase init কমান্ড আপনার প্রোজেক্ট ডিরেক্টরি এবং কিছু Firebase প্রোডাক্ট সেট-আপ করার ধাপগুলি দেখায়। প্রজেক্ট ইনিশিয়ালাইজ করার সময়, Firebase CLI আপনাকে নিম্নলিখিত টাস্কগুলি সম্পূর্ণ করতে বলে:

  • একটি ডিফল্ট Firebase প্রোজেক্ট বেছে নিন।

    এই ধাপটি বর্তমান প্রোজেক্ট ডিরেক্টরিকে Firebase প্রোজেক্টের সাথে যুক্ত করে, যাতে প্রোজেক্ট-নির্দিষ্ট কমান্ড (যেমন firebase deploy) উপযুক্ত Firebase প্রোজেক্টের বিরুদ্ধে চালানো যায়।

    এছাড়াও, একই প্রোজেক্ট ডিরেক্টরির সাথে একাধিক Firebase প্রোজেক্ট অ্যাসোসিয়েট করা (যেমন, স্টেজিং প্রোজেক্ট ও প্রোডাকশন প্রোজেক্ট) সম্ভব।

  • আপনার Firebase প্রোজেক্টে সেট-আপ করার জন্য Firebase প্রোডাক্ট বেছে নিন।

    এই ধাপে, বেছে নেওয়া প্রোডাক্ট বা ফিচারের জন্য নির্দিষ্ট ফাইলের কনফিগারেশন সেট করতে বলা হয়। এইসব কনফিগারেশন সম্পর্কে আরও বিস্তারিত জানতে, নির্দিষ্ট প্রোডাক্টের ডকুমেন্টেশন (যেমন, Hosting অথবা Authentication) দেখুন। মনে রাখবেন, আপনি আরও Firebase প্রোডাক্ট সেট-আপ করার জন্য firebase init পরে যেকোনও সময় রান করতে পারবেন।

ইনিশিয়ালাইজেশন প্রসেস শেষ হলে, Firebase অটোমেটিক আপনার লোকাল অ্যাপ ডিরেক্টরির রুট ফোল্ডারে নিম্নলিখিত দুটি ফাইল তৈরি করে:

  • firebase.json কনফিগারেশন ফাইল যা আপনার প্রোজেক্ট কনফিগারেশন তালিকাভুক্ত করে।

  • .firebaserc ফাইল যা আপনার প্রোজেক্টের ছদ্মনাম স্টোর করে।

firebase.json ফাইল

firebase init কমান্ডটি আপনার প্রোজেক্ট ডিরেক্টরির রুটে একটি firebase.json কনফিগারেশন ফাইল তৈরি করে।

Firebase CLI-এর মাধ্যমে অ্যাসেট ডিপ্লয় করার জন্য firebase.json ফাইলটি প্রয়োজন হয়, কারণ এটি নির্দিষ্ট করে যে আপনার প্রোজেক্ট ডিরেক্টরি থেকে কোন ফাইল ও সেটিংস আপনার Firebase প্রোজেক্টে (যেমন, Hosting সেটিংস, Authentication প্রদানকারী কনফিগারেশন, নিরাপত্তা সংক্রান্ত নিয়ম ও Cloud Functions কনফিগারেশন) ডিপ্লয় করা হবে। যেহেতু কিছু সেটিংস আপনার প্রোজেক্ট ডাইরেক্টরি বা Firebase কনসোলে ডিফাইন করা যেতে পারে, তাই নিশ্চিত করুন যে আপনি সম্ভাব্য ডেপ্লয়মেন্ট সংক্রান্ত বিরোধ সমাধান করেছেন।

আপনি বেশিরভাগ Firebase Hosting বিকল্প সরাসরি firebase.json ফাইলে কনফিগার করতে পারবেন। তবে, অন্যান্য Firebase পরিষেবা যা Firebase CLI-এর মাধ্যমে ডেপ্লয় করা যায়, সেগুলির ক্ষেত্রে firebase init কমান্ড নির্দিষ্ট ফাইল তৈরি করে যেখানে আপনি সেইসব পরিষেবার জন্য সেটিংস নির্ধারণ করতে পারেন, যেমন Cloud Functions-এর জন্য index.js ফাইল। এছাড়াও, আপনি 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"
      },
      "auth": {
        "providers": {
          "anonymous": true,
          "emailPassword": true,
          "googleSignIn": {
            "oAuthBrandDisplayName": "My App",
            "supportEmail": "support@myapp.com"
          }
        }
      },
      "remoteconfig": {
        "template": "remoteconfig.template.json"
      }
    }

firebase.json ডিফল্ট হিসেবে ব্যবহার করা হলেও, আপনি বিকল্প কনফিগারেশন ফাইল নির্দিষ্ট করতে --config PATH ফ্ল্যাগ পাস করতে পারবেন।

একাধিক Cloud Firestore ডেটাবেসের জন্য কনফিগারেশন

আপনি firebase init রান করালে, আপনার firebase.json ফাইলে একটি firestore কী থাকবে যা আপনার প্রজেক্টের ডিফল্ট ডেটাবেসের সাথে সম্পর্কিত, যেমনটি আগের উদাহরণে দেখানো হয়েছে।

আপনার প্রোজেক্টে একাধিক Cloud Firestore ডেটাবেস থাকলে, প্রতিটি ডেটাবেসের সাথে আলাদা আলাদা Cloud Firestore Security Rules এবং ডেটাবেস ইন্ডেক্স সোর্স ফাইল অ্যাসোসিয়েট করতে আপনার firebase.json ফাইল এডিট করুন। 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"
]

আপনি যদি firebase.json-এ ignore-এর জন্য নিজের কাস্টম ভ্যালু যোগ করেন, তাহলে নিশ্চিত করুন যে আপনি আগের তালিকায় দেখানো ফাইলের তালিকাটি রেখেছেন (বা এটি না থাকলে যোগ করেছেন)।

প্রোজেক্টের ছদ্মনাম ম্যানেজ করা

আপনি একই প্রোজেক্ট ডিরেক্টরির সাথে একাধিক Firebase প্রোজেক্ট অ্যাসোসিয়েট করতে পারবেন। যেমন, আপনি স্টেজিংয়ের জন্য একটি Firebase প্রোজেক্ট এবং প্রোডাকশনের জন্য অন্য একটি ব্যবহার করতে পারেন। বিভিন্ন প্রোজেক্ট এনভায়রনমেন্ট ব্যবহার করে, প্রোডাকশনে ডেপ্লয় করার আগে আপনি পরিবর্তনগুলি যাচাই করতে পারবেন। firebase use কমান্ড আপনাকে নতুন অ্যালিয়াস তৈরি করার পাশাপাশি অ্যালিয়াসগুলির মধ্যে পরিবর্তন করতে দেয়।

প্রোজেক্টের ছদ্মনাম যোগ করা

প্রোজেক্ট ইনিশিয়ালাইজেশনের সময় আপনি কোনও Firebase প্রোজেক্ট বেছে নিলে, প্রোজেক্টটি অটোমেটিক default-এর অ্যালিয়াস অ্যাসাইন করা হয়। তবে, অন্য Firebase প্রোজেক্টের বিরুদ্ধে প্রোজেক্ট-নির্দিষ্ট কমান্ড রান করার অনুমতি দিতে, কিন্তু এখনও একই প্রোজেক্ট ডিরেক্টরি ব্যবহার করতে, আপনার প্রোজেক্ট ডিরেক্টরির মধ্যে থেকে নিম্নলিখিত কমান্ড রান করুন:

firebase use --add

এই কমান্ড আপনাকে অন্য Firebase প্রোজেক্ট বেছে নিতে এবং প্রোজেক্টকে ছদ্মনাম হিসেবে অ্যাসাইন করতে প্রম্পট করে। অ্যালিয়াস অ্যাসাইনমেন্ট আপনার প্রোজেক্ট ডিরেক্টরির মধ্যে .firebaserc ফাইলে লেখা হয়।

প্রোজেক্টের বিকল্প নাম ব্যবহার করা

অ্যাসাইন করা Firebase প্রোজেক্টের ছদ্মনাম ব্যবহার করতে, আপনার প্রোজেক্ট ডিরেক্টরির মধ্যে থেকে নিম্নলিখিত কমান্ডগুলির মধ্যে যেকোনও একটি রান করুন।

কমান্ড বিবরণ
firebase use আপনার প্রোজেক্ট ডিরেক্টরির জন্য নির্দিষ্ট করা উপনামের তালিকা দেখুন
firebase use \
PROJECT_ID|ALIAS
নির্দিষ্ট Firebase প্রোজেক্টের বিরুদ্ধে চালানোর জন্য সব কমান্ড নির্দেশ করে।
CLI এই প্রোজেক্টকে "অ্যাক্টিভ প্রোজেক্ট" হিসেবে ব্যবহার করে।
firebase use --clear অ্যাক্টিভ প্রোজেক্ট মুছে দেয়।

অন্যান্য CLI কমান্ড চালানোর আগে নতুন অ্যাক্টিভ প্রোজেক্ট সেট করতে firebase use PROJECT_ID|ALIAS চালান।

firebase use \
--unalias PROJECT_ALIAS
আপনার প্রোজেক্ট ডিরেক্টরি থেকে একটি অলিয়াস সরিয়ে দেয়।

আপনি যেকোনও CLI কমান্ডের সাথে --project ফ্ল্যাগ পাস করে অ্যাক্টিভ প্রোজেক্ট হিসেবে যা ব্যবহার করা হচ্ছে তা ওভাররাইড করতে পারবেন। যেমন: আপনি নিজের CLI-কে এমন একটি Firebase প্রোজেক্টের বিরুদ্ধে রান করার জন্য সেট করতে পারেন, যেটিতে আপনি staging অ্যালিয়াস অ্যাসাইন করেছেন। আপনি যদি Firebase প্রোজেক্টের বিরুদ্ধে একটি কমান্ড চালাতে চান, তাহলে আপনি prod ছদ্মনাম অ্যাসাইন করেছেন, তাহলে আপনি, উদাহরণস্বরূপ, firebase deploy --project=prod চালাতে পারবেন।

সোর্স কন্ট্রোল ও প্রোজেক্টের ছদ্মনাম

সাধারণত, আপনার টিমের সদস্যদের প্রোজেক্টের ছদ্মনাম শেয়ার করার অনুমতি দিতে, আপনাকে সোর্স কন্ট্রোলে .firebaserc ফাইল চেক-ইন করতে হবে। তবে, ওপেন সোর্স প্রোজেক্ট বা স্টার্টার টেমপ্লেটের ক্ষেত্রে, সাধারণত আপনার .firebaserc ফাইল চেক-ইন করা উচিত নয়।

আপনার যদি এমন কোনও ডেভেলপমেন্ট প্রোজেক্ট থাকে যা শুধুমাত্র আপনার ব্যবহারের জন্য, তাহলে আপনি প্রতিটি কমান্ডের সাথে --project ফ্ল্যাগ পাস করতে পারেন অথবা Firebase প্রোজেক্টে firebase use PROJECT_ID কোনও অ্যালিয়াস অ্যাসাইন না করেই রান করতে পারেন।

আপনার Firebase প্রোজেক্ট লোকালি পরিবেশন ও পরীক্ষা করা

প্রোডাকশনে ডেপ্লয় করার আগে, আপনি লোকালি হোস্ট করা URL-এ Firebase প্রোজেক্ট দেখতে ও পরীক্ষা করতে পারবেন। আপনি যদি শুধুমাত্র বাছাই করা ফিচার পরীক্ষা করতে চান, তাহলে firebase serve কমান্ডে কমা-সেপারেটেড তালিকা ব্যবহার করতে পারেন।

আপনি যদি নিম্নলিখিত টাস্কগুলির মধ্যে কোনও একটি করতে চান, তাহলে আপনার লোকাল প্রোজেক্ট ডিরেক্টরির রুট থেকে নিম্নলিখিত কমান্ডটি রান করুন:

firebase serve --only hosting

স্থানীয় HTTP ফাংশন ব্যবহার করে আপনার প্রোজেক্ট এমুলেট করা

লোকাল HTTP ফাংশন ব্যবহার করে আপনার প্রোজেক্ট এমুলেট করতে, আপনার প্রোজেক্ট ডিরেক্টরি থেকে নিম্নলিখিত কমান্ডগুলির যেকোনও একটি রান করুন।

  • লোকাল URL-এ টেস্টিংয়ের জন্য HTTP ফাংশন ও হোস্টিং এমুলেট করতে, নিম্নলিখিত কমান্ডগুলির মধ্যে যেকোনও একটি ব্যবহার করুন:

    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 SQL Connect-এর জন্য নতুন বা আপডেট করা স্কিমা ও কানেক্টর
  • Firebase Realtime Database-এর জন্য Security Rules
  • Cloud Storage for Firebase-এর জন্য Security Rules
  • Cloud Firestore-এর জন্য Security Rules
  • Cloud Firestore-এর ইন্ডেক্স
  • Authentication-এর জন্য কনফিগারেশন

Firebase প্রোজেক্টে ডিপ্লয় করতে, আপনার প্রোজেক্ট ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড রান করুন:

firebase deploy

আপনি চাইলে প্রতিটি ডিপ্লয়মেন্টে কমেন্ট যোগ করতে পারেন। এই কমেন্টটি আপনার প্রজেক্টের Firebase Hosting পৃষ্ঠায় অন্যান্য ডেপ্লয়মেন্ট তথ্যের সাথে দেখানো হবে। যেমন:

firebase deploy -m "Deploying the best new feature ever."

firebase deploy কমান্ড ব্যবহার করার সময়, নিম্নলিখিত বিষয়গুলি সম্পর্কে সচেতন থাকুন:

  • প্রোজেক্ট ডিরেক্টরি থেকে রিসোর্স ডেপ্লয় করতে, প্রোজেক্ট ডিরেক্টরির মধ্যে অবশ্যই একটি firebase.json ফাইল থাকতে হবে। এই ফাইলটি firebase init কমান্ডের মাধ্যমে আপনার জন্য অটোমেটিক তৈরি করা হয়।

  • ডিফল্ট হিসেবে, firebase deploy আপনার প্রোজেক্ট ডিরেক্টরিতে থাকা ডেপ্লয় করা যায় এমন সব রিসোর্সের জন্য রিলিজ তৈরি করে। নির্দিষ্ট Firebase পরিষেবা বা ফিচার ডেপ্লয় করতে, আংশিক ডেপ্লয়মেন্ট ব্যবহার করুন।

নির্দিষ্ট Firebase পরিষেবা ডিপ্লয় করা

আপনি যদি শুধুমাত্র নির্দিষ্ট Firebase পরিষেবা বা ফিচার ডেপ্লয় করতে চান, তাহলে firebase deploy কমান্ডে কমা-সেপারেটেড তালিকা ব্যবহার করতে পারেন। যেমন, নিচের কমান্ডটি Firebase Hosting কন্টেন্ট এবং Cloud Storage Security Rules ডেপ্লয় করে।

firebase deploy --only hosting,storage

নিচের সারণীতে আংশিক ডেপ্লয়মেন্টের জন্য উপলভ্য পরিষেবা ও ফিচারের তালিকা দেওয়া হল। ফ্ল্যাগের নামগুলি আপনার firebase.json কনফিগারেশন ফাইলের কীগুলির সাথে মিলতে হবে।

ফ্ল্যাগ সিনট্যাক্স পরিষেবা বা ফিচার ডেপ্লয় করা হয়েছে
--only auth Authentication পরিষেবা প্রদানকারীর কনফিগারেশন
--only database Firebase Realtime Database Security Rules
--only dataconnect Firebase SQL Connect স্কিমা ও কানেক্টর
--only firestore কনফিগার করা সব ডেটাবেসের জন্য Cloud Firestore Security Rules এবং ইন্ডেক্স
--only functions Cloud Functions for Firebase
--only hosting Firebase Hosting কন্টেন্ট
--only storage Cloud Storage for Firebase Security Rules

Security Rules-এর জন্য ডেপ্লয়মেন্ট সংক্রান্ত সমস্যা

Firebase Realtime Database, Cloud Storage for Firebase ও Cloud Firestore-এর জন্য, আপনি Security Rules নিজের লোকাল প্রজেক্ট ডিরেক্টরি অথবা Firebase কনসোলে ডিফাইন করতে পারবেন।

ডেপ্লয়মেন্ট সংক্রান্ত সমস্যা এড়ানোর আরেকটি বিকল্প হল, আংশিক ডেপ্লয়মেন্ট ব্যবহার করা এবং শুধুমাত্র Security Rules-কে Firebase কনসোলে ডিফাইন করা।

প্রি-ডিপ্লয় ও পোস্ট-ডিপ্লয় স্ক্রিপ্টেড টাস্ক সেট-আপ করা

প্রি-ডিপ্লয় বা পোস্ট-ডিপ্লয় টাস্ক পারফর্ম করতে, আপনি firebase deploy কমান্ডের সাথে শেল স্ক্রিপ্ট কানেক্ট করতে পারবেন। যেমন, একটি প্রিডিপ্লয় স্ক্রিপ্ট TypeScript কোডকে জাভাস্ক্রিপ্টে ট্রান্সপাইল করতে পারে এবং একটি পোস্টডিপ্লয় হুক Firebase Hosting-এ নতুন সাইট কন্টেন্ট ডিপ্লয় করার ব্যাপারে অ্যাডমিনিস্ট্রেটরদের বিজ্ঞপ্তি পাঠাতে পারে।

প্রিডিপ্লয় বা পোস্টডিপ্লয় হুক সেট-আপ করতে, আপনার firebase.json কনফিগারেশন ফাইলে ব্যাশ স্ক্রিপ্ট যোগ করুন। আপনি firebase.json ফাইলে সরাসরি সংক্ষিপ্ত স্ক্রিপ্ট নির্ধারণ করতে পারেন অথবা আপনার প্রোজেক্ট ডিরেক্টরিতে থাকা অন্যান্য ফাইল রেফারেন্স হিসেবে ব্যবহার করতে পারেন।

যেমন, নিম্নলিখিত স্ক্রিপ্ট হল firebase.json এক্সপ্রেশন যা পোস্টডেপ্লয় টাস্কের জন্য ব্যবহার করা হয়। এটি সফলভাবে ডেপ্লয় করার পরে Firebase Hosting-এ একটি Slack মেসেজ পাঠায়।

"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 হুক, দু'টিই স্ক্রিপ্টের স্ট্যান্ডার্ড আউটপুট ও সমস্যা স্ট্রিম টার্মিনালে প্রিন্ট করে। সমস্যা হলে, নিম্নলিখিত বিষয়গুলি মনে রাখবেন:

  • প্রিডিপ্লয় হুক প্রত্যাশিতভাবে সম্পূর্ণ না হলে, ডিপ্লয়মেন্ট বাতিল করা হয়।
  • কোনও কারণে ডিপ্লয়মেন্ট ব্যর্থ হলে, পোস্টডিপ্লয় হুক ট্রিগার করা হয় না।

এনভায়রনমেন্ট ভেরিয়েবল

প্রিডিপ্লয় ও পোস্টডিপ্লয় হুক রান করা স্ক্রিপ্টের মধ্যে, নিম্নলিখিত এনভায়রনমেন্ট ভেরিয়েবল উপলভ্য:

  • $GCLOUD_PROJECT: অ্যাক্টিভ প্রোজেক্টের প্রোজেক্ট আইডি
  • $PROJECT_DIR: firebase.json ফাইল সহ রুট ডিরেক্টরি
  • $RESOURCE_DIR: (শুধুমাত্র hosting ও functions স্ক্রিপ্টের জন্য) যে ডিরেক্টরিতে ডিপ্লয় করার জন্য Hosting বা Cloud Functions রিসোর্স আছে সেটির লোকেশন

ডিপ্লয়মেন্ট কোটা

Firebase ডেপ্লয়মেন্ট অপারেশনের রেট বা ভলিউম সীমিত করে এমন কোটা আপনি অতিক্রম করতে পারেন (যদিও এটি হওয়ার সম্ভাবনা কম)। যেমন, অনেক বেশি সংখ্যক ফাংশন ডেপ্লয় করার সময়, আপনি HTTP 429 Quota সমস্যার মেসেজ পেতে পারেন। এই ধরনের সমস্যার সমাধান করতে, আংশিক ডেপ্লয়মেন্ট ব্যবহার করে দেখুন।

ডিপ্লয়মেন্ট আগের অবস্থায় ফিরিয়ে আনা

আপনার প্রজেক্টের Firebase Hosting পৃষ্ঠা থেকে Firebase Hosting ডিপ্লয়মেন্ট রোল ব্যাক করতে, বেছে নেওয়া রিলিজের জন্য রোলব্যাক অ্যাকশন বেছে নিন।

Firebase Realtime Database, Cloud Storage for Firebase বা Cloud Firestore-এর জন্য Security Rules-এর রিলিজ রোল ব্যাক করা সম্ভব নয়।

কমান্ড রেফারেন্স

CLI অ্যাডমিনিস্ট্রেটিভ কমান্ড

কমান্ড বিবরণ
সহায়তা CLI বা নির্দিষ্ট কমান্ড সম্পর্কে সহায়তা সংক্রান্ত তথ্য দেখায়।
init বর্তমান ডিরেক্টরিতে একটি নতুন Firebase প্রোজেক্ট অ্যাসোসিয়েট ও সেট-আপ করে। এই কমান্ড বর্তমান ডিরেক্টরিতে একটি firebase.json কনফিগারেশন ফাইল তৈরি করে।
লগ-ইন আপনার Google অ্যাকাউন্টের মাধ্যমে CLI-কে যাচাই করে। ওয়েব ব্রাউজারের অ্যাক্সেস থাকতে হবে।
রিমোট এনভায়রনমেন্টে CLI-তে লগ-ইন করতে, যেখানে localhost-এ অ্যাক্সেস দেওয়া হয় না, সেখানে --no-localhost ফ্ল্যাগ ব্যবহার করুন।
login:ci নন-ইন্টার‍্যাক্টিভ এনভায়রনমেন্টে ব্যবহারের জন্য যাচাইকরণ টোকেন তৈরি করে।
login:add অতিরিক্ত Google অ্যাকাউন্টে লগ-ইন করে।
login:list সবকটি যাচাই করা Google অ্যাকাউন্টের তালিকা দেখায়।
login:use অ্যাক্টিভ Google অ্যাকাউন্ট সেট করে।
লগ-আউট CLI থেকে আপনার Google অ্যাকাউন্ট সাইন-আউট করে দেয়।
খুলুন প্রাসঙ্গিক প্রোজেক্ট রিসোর্স দেখতে ব্রাউজার খোলে।
projects:list আপনার অ্যাক্সেস আছে এমন সব Firebase প্রোজেক্টের তালিকা দেখায়।
ব্যবহার করুন CLI-এর জন্য অ্যাক্টিভ Firebase প্রোজেক্ট সেট করে।
প্রোজেক্টের ছদ্মনাম ম্যানেজ করে।

প্রোজেক্ট ম্যানেজমেন্ট কমান্ড

কমান্ড বিবরণ
Firebase প্রোজেক্ট ম্যানেজমেন্ট
projects:addfirebase আগে থেকে থাকা Google Cloud প্রোজেক্টে Firebase রিসোর্স যোগ করে এবং Firebase পরিষেবা চালু করে।
projects:create নতুন Google Cloud প্রোজেক্ট তৈরি করে, তারপর নতুন প্রোজেক্টে Firebase রিসোর্স যোগ করে।
projects:list আপনার অ্যাক্সেস আছে এমন সব Firebase প্রোজেক্টের তালিকা দেখায়।
Firebase অ্যাপ ম্যানেজমেন্ট (iOS, Android, ওয়েব)
apps:create অ্যাক্টিভ প্রোজেক্টে নতুন Firebase অ্যাপ তৈরি করে।
apps:list অ্যাক্টিভ প্রোজেক্টে রেজিস্টার করা Firebase অ্যাপের তালিকা দেখায়।
apps:sdkconfig Firebase অ্যাপের Firebase কনফিগারেশন প্রিন্ট করে।
setup:web বন্ধ করে দেওয়া হয়েছে। পরিবর্তে, apps:sdkconfig ব্যবহার করুন এবং প্ল্যাটফর্ম আর্গুমেন্ট হিসেবে web নির্দিষ্ট করুন।
Firebase Web অ্যাপের Firebase কনফিগারেশন প্রিন্ট করে।
SHA সার্টিফিকেট হ্যাশ ম্যানেজমেন্ট (শুধুমাত্র Android)
apps:android:sha:create \
FIREBASE_APP_ID SHA_HASH
উল্লেখ করা SHA সার্টিফিকেট হ্যাশকে উল্লেখ করা Firebase Android অ্যাপে যোগ করে।
apps:android:sha:delete \
FIREBASE_APP_ID SHA_HASH
নির্দিষ্ট Firebase Android অ্যাপ থেকে নির্দিষ্ট SHA সার্টিফিকেট হ্যাশ মুছে দেয়। Firebase Android অ্যাপ।
apps:android:sha:list \
FIREBASE_APP_ID
নির্দিষ্ট Firebase Android অ্যাপের জন্য SHA সার্টিফিকেট হ্যাশ তালিকাভুক্ত করে।

ডেপ্লয়মেন্ট ও স্থানীয় ডেভেলপমেন্ট

এইসব কমান্ড আপনাকে Firebase Hosting সাইট ডিপ্লয় করতে ও সেটির সাথে ইন্টার‍্যাক্ট করতে দেয়।

কমান্ড বিবরণ
ডেপ্লয় করা অ্যাক্টিভ প্রোজেক্টে আপনার প্রোজেক্ট ডিরেক্টরি থেকে কোড ও অ্যাসেট ডেপ্লয় করে। Firebase Hosting-এর জন্য, একটি firebase.json কনফিগারেশন ফাইল প্রয়োজন।
পরিবেশন আপনার 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 BACKEND_ID \
--emails EMAILS \
--project PROJECT_ID \
--location REGION
প্রদত্ত সিক্রেটকে পরিষেবা অ্যাকাউন্ট, ব্যবহারকারী বা গ্রুপকে অনুমতি দেয়, যাতে 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 প্রোজেক্টে নেটিভ মোডে একটি ডেটাবেস ইনস্ট্যান্স তৈরি করুন।

কমান্ডটি নিম্নলিখিত ফ্ল্যাগ নেয়:

  • --location <region name> ব্যবহার করে ডেটাবেসের ডিপ্লয়মেন্ট লোকেশন নির্দিষ্ট করুন। মনে রাখবেন, উপলভ্য লোকেশনের তালিকা পেতে আপনি firebase firestore:locations রান করতে পারবেন। প্রয়োজনীয়।
  • --delete-protection <deleteProtectionState> নির্দিষ্ট ডেটাবেস মুছে ফেলার অনুমতি দিতে বা আটকাতে। সঠিক ভ্যালু হল ENABLED বা DISABLED। ডিফল্ট হিসেবে DISABLED সেট করা থাকে।
  • --point-in-time-recovery <PITRState> to পয়েন্ট-ইন-টাইম রিকভারি চালু করা আছে কিনা তা সেট করুন। সঠিক মান হল ENABLED বা DISABLED. ডিফল্ট হিসেবে DISABLED সেট করা থাকে। ঐচ্ছিক৷
  • --edition <edition> ব্যবহার করে ডেটাবেস টিয়ার নির্দিষ্ট করুন। Enterprise ফিচারের জন্য, enterprise-এ সেট করুন।
  • --firestore-data-access <ENABLED|DISABLED> (শুধুমাত্র Enterprise-এর জন্য) Firestore API-এর উপলভ্যতা নিয়ন্ত্রণ করতে। ডিফল্ট হিসেবে ENABLED সেট করা থাকে।
  • --mongodb-compatible-data-access <ENABLED|DISABLED> (শুধুমাত্র Enterprise ভার্সনে) MongoDB-এর সাথে মানানসই API-এর উপলভ্যতা নিয়ন্ত্রণ করতে। ডিফল্ট হিসেবে DISABLED সেট করা থাকে।
  • --realtime-updates <ENABLED|DISABLED> "দেখুন" (রিয়েলটাইম) ফিচার চালু বা বন্ধ করতে (শুধুমাত্র এন্টারপ্রাইজ)। --firestore-data-access-এর মান ENABLED হতে হবে। ডিফল্ট হিসেবে ENABLED সেট করা থাকে।
firestore:databases:list

আপনার Firebase প্রোজেক্টে ডেটাবেস তালিকাভুক্ত করুন।

firestore:databases:get DATABASE_ID

আপনার Firebase প্রোজেক্টে নির্দিষ্ট ডেটাবেসের জন্য ডেটাবেস কনফিগারেশন পান।

এন্টারপ্রাইজ ডেটাবেসের ক্ষেত্রে, আউটপুটে Edition, Firestore Data Access, MongoDB Compatible Data Access এবং Realtime Updates স্ট্যাটাস অন্তর্ভুক্ত থাকে।

firestore:databases:update DATABASE_ID

আপনার Firebase প্রোজেক্টে নির্দিষ্ট ডেটাবেসের ডেটাবেস কনফিগারেশন আপডেট করুন।

অন্তত একটি ফ্ল্যাগ প্রয়োজন। কমান্ডটি নিম্নলিখিত ফ্ল্যাগ নেয়:

  • --delete-protection <deleteProtectionState> নির্দিষ্ট ডেটাবেস মুছে ফেলার অনুমতি দিতে বা আটকাতে। সঠিক ভ্যালু হল ENABLED বা DISABLED। ডিফল্ট হিসেবে DISABLED সেট করা থাকে।
  • --point-in-time-recovery <PITRState> to পয়েন্ট-ইন-টাইম রিকভারি চালু করা আছে কিনা তা সেট করুন। সঠিক মান হল ENABLED বা DISABLED. ডিফল্ট হিসেবে DISABLED সেট করা থাকে। ঐচ্ছিক৷
  • --firestore-data-access <ENABLED|DISABLED> (শুধুমাত্র Enterprise-এর জন্য) Firestore API-এর উপলভ্যতা নিয়ন্ত্রণ করতে।
  • --mongodb-compatible-data-access <ENABLED|DISABLED> (শুধুমাত্র Enterprise ভার্সনে) MongoDB-এর সাথে মানানসই API-এর উপলভ্যতা নিয়ন্ত্রণ করতে।
  • --realtime-updates <ENABLED|DISABLED> "দেখুন" (রিয়েলটাইম) ফিচার চালু বা বন্ধ করতে (শুধুমাত্র এন্টারপ্রাইজ)। --firestore-data-access-এর মান ENABLED হতে হবে।
firestore:databases:delete DATABASE_ID

আপনার Firebase প্রোজেক্টে কোনও ডেটাবেস মুছে দিন।

firestore:indexes

আপনার Firebase প্রোজেক্টে কোনও ডেটাবেসের জন্য ইন্ডেক্সের তালিকা।

কমান্ডটি নিম্নলিখিত ফ্ল্যাগ নেয়:

  • --database DATABASE_ID to যে ডেটাবেসের ইন্ডেক্স তালিকাভুক্ত করতে চান সেটির নাম উল্লেখ করুন। প্রদান করা না হলে ডিফল্ট ডেটাবেসের জন্য ইন্ডেক্স তালিকাভুক্ত করা হয়।
firestore:delete

অ্যাক্টিভ প্রোজেক্টের ডেটাবেস থেকে ডকুমেন্ট মুছে দেয়। CLI ব্যবহার করে, আপনি কোনও সংগ্রহের সব ডকুমেন্ট রিকার্সিভ পদ্ধতিতে মুছে দিতে পারবেন।

মনে রাখবেন, CLI-এর মাধ্যমে Cloud Firestore ডেটা মুছে দিলে রিড ও মুছে দেওয়ার খরচ লাগে। আরও তথ্যের জন্য, বিলিং Cloud Firestore বুঝুন দেখুন।

কমান্ডটি নিম্নলিখিত ফ্ল্যাগ নেয়:

  • --database DATABASE_ID যে ডেটাবেস থেকে ডকুমেন্ট মুছে দেওয়া হয়েছে তার নাম নির্দিষ্ট করতে। যদি নির্দিষ্ট করা না থাকে, তাহলে ডিফল্ট ডেটাবেস থেকে ডকুমেন্ট মুছে দেওয়া হয়। ঐচ্ছিক৷

Cloud Functions for Firebase কমান্ড

কমান্ড বিবরণ
functions:config:clone পুরনো হয়ে গেছে।
অ্যাক্টিভ Firebase প্রোজেক্টে অন্য প্রোজেক্টের এনভায়রনমেন্ট ক্লোন করে।
functions:config:export Google Cloud-এ অ্যাক্টিভ প্রোজেক্টের রানটাইম কনফিগারেশন এক্সপোর্ট করে Secret Manager।
functions:config:get সঞ্চালনে নেই।
অ্যাক্টিভ প্রোজেক্টের Cloud Functions-এর আগে থেকে থাকা কনফিগারেশন ভ্যালু রিট্রিভ করে।
functions:config:set সঞ্চালিত।
অ্যাক্টিভ প্রোজেক্টের রানটাইম কনফিগারেশন ভ্যালু স্টোর করে Cloud Functions।
functions:config:unset সচল নয়।
অ্যাক্টিভ প্রোজেক্টের রানটাইম কনফিগারেশন থেকে মান সরিয়ে দেয়।
ফাংশন:delete \
FUNCTION_NAME
উল্লেখ করা ফাংশন মুছে দেয়।
ফাংশন:list ডিপ্লয় করা ফাংশনের তালিকা দেখায়।
ফাংশন:log ডেপ্লয় করা Cloud Functions থেকে লগ পড়ে।
functions:secrets:access \
SECRET_NAME
সিক্রেট ও তার ভার্সন দেওয়া থাকলে, সিক্রেটের ভ্যালু অ্যাক্সেস করে।
functions:secrets:destroy \
SECRET_NAME
একটি সিক্রেট ধ্বংস করে।
functions:secrets:get \
SECRET_NAME
কোনও সিক্রেট ও তার ভার্সনের মেটাডেটা পায়।
functions:secrets:prune অব্যবহৃত সিক্রেট ধ্বংস করে।
ফাংশন:গোপন তথ্য:সেট \
SECRET_NAME
একটি সিক্রেট তৈরি বা আপডেট করে।
ফাংশন:shell ফাংশন পরীক্ষা করার জন্য একটি লোকাল ইন্টার‍্যাক্টিভ শেল শুরু করে।

আরও তথ্যের জন্য, এনভায়রনমেন্ট কনফিগারেশন ডকুমেন্টেশন দেখুন।

Crashlytics কমান্ড

কমান্ড বিবরণ
crashlytics:mappingfile:generateid \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML
নির্দিষ্ট Android রিসোর্স (XML) ফাইলে অনন্য ম্যাপিং ফাইল আইডি তৈরি করে।
crashlytics:mappingfile:upload \
--app=FIREBASE_APP_ID \
--resource-file=PATH/TO/ANDROID_RESOURCE.XML \
PATH/TO/MAPPING_FILE.TXT
এই অ্যাপের জন্য Proguard-এর সাথে মানানসই ম্যাপিং (TXT) ফাইল আপলোড করে, এবং নির্দিষ্ট করা Android রিসোর্স (XML) ফাইলে ঘোষণা করা ম্যাপিং ফাইল আইডির সাথে এটি অ্যাসোসিয়েট করে।
crashlytics:symbols:upload \
--app=FIREBASE_APP_ID \
PATH/TO/SYMBOLS
নেটিভ লাইব্রেরির জন্য Crashlytics-মানানসই সিম্বল ফাইল তৈরি করে Android-এ ক্র্যাশ হয় এবং Firebase সার্ভারে এটি আপলোড করে।

SQL Connect কমান্ড

এইসব কমান্ড ও তাদের ব্যবহারের উদাহরণ SQL Connect CLI রেফারেন্স গাইডে আরও বিস্তারিতভাবে উল্লেখ করা আছে।

কমান্ড বিবরণ
dataconnect:services:list আপনার Firebase প্রোজেক্টে ডিপ্লয় করা সব SQL Connect পরিষেবা তালিকাভুক্ত করে।
dataconnect:sql:diff \
SERVICE_ID
নির্দিষ্ট পরিষেবার জন্য, একটি লোকাল SQL Connect স্কিমা এবং আপনার Cloud SQL ডেটাবেস স্কিমার মধ্যে পার্থক্য দেখায়।
dataconnect:sql:migrate \
--force \
SERVICE_ID
আপনার Cloud SQL ডেটাবেসের স্কিমা আপনার লোকাল SQL Connect স্কিমার সাথে ম্যাচ করার জন্য মাইগ্রেট করে।
dataconnect:sql:grant\
--role=ROLE \
--email=EMAIL \
SERVICE_ID
নির্দিষ্ট ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টের ইমেলে SQL ভূমিকা প্রদান করে।
--role ফ্ল্যাগের জন্য, SQL-এর যে ভূমিকা প্রদান করতে হবে তা হল: owner, writer বা reader।
--email ফ্ল্যাগের জন্য, যে ব্যবহারকারী বা পরিষেবা অ্যাকাউন্টকে ভূমিকা দিতে চান তার ইমেল আইডি প্রদান করুন।
dataconnect:sdk:generate আপনার SQL Connect কানেক্টরের জন্য টাইপ করা SDK জেনারেট করে।

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 কমান্ড

কমান্ড বিবরণ
হোস্টিং:বন্ধ করুন

চালু Firebase প্রোজেক্টের জন্য Firebase Hosting ট্রাফিক পরিবেশন করা বন্ধ করে দেয়।

এই কমান্ড চালানোর পরে আপনার প্রোজেক্টের Hosting URL-এ "সাইট পাওয়া যায়নি" মেসেজ দেখানো হবে।

Hostingটি সাইট ম্যানেজ করা
firebase hosting:sites:create \
SITE_ID

নির্দিষ্ট SITE_ID ব্যবহার করে অ্যাক্টিভ Firebase প্রোজেক্টে নতুন Hosting সাইট তৈরি করে

(ঐচ্ছিক) নিম্নলিখিত ফ্ল্যাগ পাস করে নতুন সাইটের সাথে অ্যাসোসিয়েট করার জন্য আগে থেকে থাকা Firebase ওয়েব অ্যাপ নির্দিষ্ট করুন: --app FIREBASE_APP_ID

firebase hosting:sites:delete \
SITE_ID

নির্দিষ্ট Hosting সাইট মুছে দেয়

সাইট মুছে দেওয়ার আগে CLI একটি কনফার্মেশন প্রম্পট দেখায়।

(ঐচ্ছিক) কনফার্মেশন প্রম্পট এড়িয়ে যেতে, নিম্নলিখিত ফ্ল্যাগ পাস করুন: -f অথবা --force

firebase hosting:sites:get \
SITE_ID

নির্দিষ্ট Hosting সাইট সম্পর্কে তথ্য রিট্রিভ করে

firebase hosting:sites:list

অ্যাক্টিভ Firebase প্রোজেক্টের জন্য সব Hosting সাইটের তালিকা তৈরি করে

প্রিভিউ চ্যানেল ম্যানেজ করা
firebase hosting:channel:create \
CHANNEL_ID

নির্দিষ্ট 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 সাইটে একটি নতুন প্রিভিউ চ্যানেল তৈরি করে।

আপনি VERSION_ID-কে Firebase কনসোলের Hosting ড্যাশবোর্ডে খুঁজে পাবেন।

Realtime Database কমান্ড

মনে রাখবেন, আপনি কনসোলে Firebase অথবা সাধারণ firebase init ওয়ার্কফ্লো বা নির্দিষ্ট firebase init database ফ্লো ব্যবহার করে আপনার প্রাথমিক, ডিফল্ট Realtime Database ইনস্ট্যান্স তৈরি করতে পারবেন।

ইনস্ট্যান্স তৈরি হয়ে গেলে, আপনি CLI ব্যবহার করে নির্দিষ্ট ইনস্ট্যান্স ম্যানেজ ও ইন্টার‍্যাক্ট করুন লিঙ্কে বর্ণিত পদ্ধতি অনুযায়ী সেগুলি ম্যানেজ করতে পারবেন।

কমান্ড বিবরণ
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 কমান্ড

এইসব কমান্ড ও তাদের ব্যবহারের ক্ষেত্রগুলি প্রোগ্রাম্যাটিক উপায়ে 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 টেমপ্লেটকে নির্দিষ্ট করা আগের ভার্সন নম্বরে রোল ব্যাক করে অথবা অবিলম্বে আগের ভার্সনে (বর্তমান ভার্সন -১) ডিফল্ট হিসেবে সেট করে। --force তারিখ পেরিয়ে না গেলে, রোলব্যাক করার আগে হ্যাঁ/না প্রম্পট দেখান।
remoteconfig:experiments:list \
--filter EXPRESSION
--pageSize NUMBER
--pageToken TOKEN
কোনও প্রজেক্টের জন্য সব Remote Config এক্সপেরিমেন্টের তালিকা তৈরি করে, ঐচ্ছিক ফিল্টারিং, প্রতি পৃষ্ঠায় রিটার্ন করার জন্য এক্সপেরিমেন্টের সংখ্যা (ডিফল্ট হিসেবে ১০) এবং তালিকার জন্য শুরুর অফসেট হিসেবে পৃষ্ঠা টোকেন।
remoteconfig:experiments:get \
EXPERIMENT_ID
নির্দিষ্ট Remote Config এক্সপেরিমেন্টের বিবরণ পায়।
remoteconfig:experiments:delete \
EXPERIMENT_ID
নির্দিষ্ট Remote Config এক্সপেরিমেন্ট মুছে দেয়।
remoteconfig:rollouts:list \
--filter EXPRESSION
--pageSize NUMBER
--pageToken TOKEN
কোনও প্রোজেক্টের জন্য সব Remote Config রোলআউট তালিকাভুক্ত করে, ঐচ্ছিক ফিল্টারিং, প্রতি পৃষ্ঠায় রিটার্ন করার জন্য রোলআউটের সংখ্যা (ডিফল্ট হিসেবে ১০) এবং তালিকার জন্য শুরুর অফসেট হিসেবে পৃষ্ঠা টোকেন।
remoteconfig:rollouts:get \
ROLLOUT_ID
নির্দিষ্ট Remote Config রোলআউটের বিবরণ পায়।
remoteconfig:rollouts:delete \
ROLLOUT_ID
নির্দিষ্ট Remote Config রোলআউট মুছে দেয়।