Firebase CLI ব্যবহার করে টেস্টারদের কাছে iOS অ্যাপ ডিস্ট্রিবিউট করা

আপনি Firebase CLI ব্যবহার করে পরীক্ষকদের কাছে বিল্ড ডিস্ট্রিবিউট করতে পারবেন। CLI টুল আপনাকে কোনও বিল্ডের জন্য পরীক্ষক ও রিলিজ নোট নির্দিষ্ট করতে এবং সেই অনুযায়ী বিল্ড ডিস্ট্রিবিউট করতে দেয়।

শুরু করার আগে

  1. আপনি আগে থেকে না করে থাকলে, আপনার Apple প্রোজেক্টে Firebase যোগ করুন।

    আপনি অন্য কোনও Firebase প্রোডাক্ট ব্যবহার না করলে, আপনাকে শুধু একটি প্রোজেক্ট তৈরি করতে হবে এবং আপনার অ্যাপ রেজিস্টার করতে হবে। তবে, ভবিষ্যতে অতিরিক্ত প্রোডাক্ট ব্যবহার করার সিদ্ধান্ত নিলে, উপরে লিঙ্ক করা পৃষ্ঠায় উল্লেখিত সব ধাপ সম্পূর্ণ করতে ভুলবেন না।

  2. Firebase কনসোলের App Distribution পৃষ্ঠা খুলুন। প্রম্পট করা হলে আপনার Firebase প্রোজেক্ট বেছে নিন, অ্যাপ সুইচার ব্যবহার করে আপনার অ্যাপ বেছে নিন এবং শুরু করুন বিকল্পে ক্লিক করুন।

ধাপ ১. টেস্টারদের কাছে আপনার অ্যাপ ডিস্ট্রিবিউট করা

টেস্টারদের কাছে আপনার অ্যাপ ডিস্ট্রিবিউট করতে, Firebase CLI ব্যবহার করে IPA ফাইল আপলোড করুন:

  1. Firebase CLI-এর লেটেস্ট ভার্সন ইনস্টল বা আপডেট করুন (আপনার OS-এর জন্য নির্দিষ্ট CLI-এর স্ট্যান্ডঅ্যালোন বাইনারি ডাউনলোড করার জন্য সাজেস্ট করা হয়)। সাইন-ইন করেছেন কিনা এবং আপনার প্রোজেক্ট অ্যাক্সেস করতে পারছেন কিনা তা দেখে নিন।
  2. আপনার অ্যাপ আপলোড করতে এবং টেস্টারদের মধ্যে এটি ডিস্ট্রিবিউট করতে appdistribution:distribute কমান্ড চালান। ডিস্ট্রিবিউশন কনফিগার করতে নিম্নলিখিত প্যারামিটার ব্যবহার করুন:

    appdistribution:distribute বিকল্প
    --app

    প্রয়োজনীয়: আপনার অ্যাপের Firebase অ্যাপ আইডি। আপনি Firebase কনসোলে, সাধারণ সেটিংস পৃষ্ঠায় অ্যাপ আইডি দেখতে পাবেন।

    --app 1:1234567890:ios:0a1b2c3d4e5f67890
    --token

    Firebase CLI-এর (আরও তথ্যের জন্য CI সিস্টেমের সাথে CLI ব্যবহার করুন পড়ুন) মাধ্যমে আপনার CI এনভায়রনমেন্টকে যাচাই করার সময় প্রিন্ট করা রিফ্রেশ টোকেন।

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    এই বিল্ডের জন্য রিলিজ নোট।

    আপনি সরাসরি রিলিজ নোট উল্লেখ করতে পারেন:

    --release-notes "Text of release notes"

    অথবা, প্লেন টেক্সট ফাইলের পাথ নির্দিষ্ট করুন:

    --release-notes-file "/path/to/release-notes.txt"
    --testers
    --testers-file

    আপনি যেসব পরীক্ষককে আমন্ত্রণ জানাতে চান তাদের ইমেল আইডি।

    আপনি কমা দিয়ে আলাদা করা ইমেল আইডির তালিকা হিসেবে পরীক্ষকদের উল্লেখ করতে পারেন:

    --testers "ali@example.com, bri@example.com, cal@example.com"

    অথবা, আপনি একটি সাধারণ টেক্সট ফাইলের পাথ নির্দিষ্ট করতে পারেন যাতে ইমেল আইডির একটি কমা-সেপারেটেড তালিকা থাকে:

    --testers-file "/path/to/testers.txt"
    --groups
    --groups-file

    আপনি যেসব পরীক্ষকের গ্রুপকে আমন্ত্রণ জানাতে চান (পরীক্ষকদের ম্যানেজ করুন দেখুন)। গ্রুপের ছদ্মনাম ব্যবহার করে গ্রুপ নির্দিষ্ট করা হয়, যা আপনি Firebase কনসোলে দেখতে পাবেন।

    আপনি কমা দিয়ে আলাদা করা তালিকা হিসেবে গ্রুপ নির্দিষ্ট করতে পারেন:

    --groups "qa-team, trusted-testers"

    অথবা, আপনি একটি প্লেন টেক্সট ফাইলের পাথ নির্দিষ্ট করতে পারেন যাতে কমা-দ্বারা আলাদা করা গ্রুপের নামের তালিকা থাকে:

    --groups-file "/path/to/groups.txt"
    --debug

    ভার্বোজ লগ আউটপুট প্রিন্ট করার জন্য আপনি একটি ফ্ল্যাগ যোগ করতে পারেন।

    --test-devices
    --test-devices-file

    আপনি যে টেস্ট ডিভাইস রান করাতে চান অ্যাপ টেস্টিং এজেন্ট সেটিতে টেস্ট করুন।

    আপনি সেমিকোলন দিয়ে আলাদা করা ডিভাইসের স্পেসিফিকেশন তালিকা হিসেবে টেস্ট ডিভাইস নির্দিষ্ট করতে পারবেন:

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait"

    অথবা, আপনি একটি সাধারণ টেক্সট ফাইলের পাথ নির্দিষ্ট করতে পারেন যাতে টেস্ট ডিভাইসের একটি সেমিকোলন-বিভক্ত তালিকা থাকে:

    --test-devices-file: "/path/to/test-devices.txt"
    --test-username

    অ্যাপ টেস্টিং এজেন্ট টেস্টের সময় অটোমেটিক লগ-ইন করার জন্য ব্যবহারকারীর নাম।

    --test-password
    --test-password-file

    অ্যাপ টেস্টিং এজেন্ট টেস্টের সময় অটোমেটিক লগ-ইন করার জন্য ব্যবহার করা পাসওয়ার্ড।

    অথবা, আপনি পাসওয়ার্ড সহ একটি প্লেন টেক্সট ফাইলের পাথ নির্দিষ্ট করতে পারেন:

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    অ্যাপ টেস্টিং এজেন্ট টেস্টের সময় অটোমেটিক লগ-ইন করার জন্য ব্যবহারকারীর নামের ফিল্ডের রিসোর্স নাম।

    --test-password-resource

    অ্যাপ টেস্টিং এজেন্ট টেস্টের সময় অটোমেটিক লগ-ইন করার জন্য পাসওয়ার্ড ফিল্ডের রিসোর্স নাম।

    --test-non-blocking

    রান করার সময় সেট করা থাকলে অ্যাপ টেস্টিং এজেন্ট টেস্ট, কমান্ডটি টেস্ট শুরু করবে এবং তারপরে সেগুলি সম্পূর্ণ হওয়ার জন্য অপেক্ষা না করে অবিলম্বে রিটার্ন করবে। পরীক্ষার ফলাফল দেখতে, Firebase কনসোলে যান। এই ফ্ল্যাগ সেট করা না থাকলে, পরীক্ষা সম্পূর্ণ না হওয়া পর্যন্ত কমান্ড ব্লক হয়ে যাবে এবং কোনও পরীক্ষা ব্যর্থ হলে, ব্যর্থতার কোড সহ বেরিয়ে আসবে।

    --results-bucket

    একটি কাস্টম Google Cloud Storage (GCS) বাকেট যেখানে পরীক্ষার ফলাফল স্টোর করা হয়। এটি ফাঁকা রাখলে, ডিফল্ট বাকেট ব্যবহার করা হয়। বাকেটটি অবশ্যই বিলিং চালু থাকা প্রোজেক্টের মালিকানাধীন হতে হবে এবং বাকেট নির্দিষ্ট করলে ব্যবহৃত স্টোরেজের জন্য বিলিং চার্জ প্রযোজ্য হবে।

    যেমন:

    firebase appdistribution:distribute test.ipa  \
        --app 1:1234567890:ios:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt

    রিলিজ আপলোড করার পরে Firebase CLI নিম্নলিখিত লিঙ্ক আউটপুট করে। এইসব লিঙ্ক আপনাকে বাইনারি ম্যানেজ করতে এবং পরীক্ষক ও অন্যান্য ডেভেলপারদের কাছে সঠিক রিলিজ আছে কিনা তা নিশ্চিত করতে সাহায্য করে:

    • firebase_console_uri - একটি সিঙ্গেল রিলিজ দেখানো Firebase কনসোলের লিঙ্ক। আপনার সংস্থার অন্যান্য ডেভেলপারদের সাথে এই লিঙ্ক শেয়ার করতে পারবেন।
    • testing_uri - পরীক্ষকের অভিজ্ঞতায় রিলিজের লিঙ্ক (iOS ওয়েব ক্লিপ) যা পরীক্ষকদের রিলিজ নোট দেখতে এবং তাদের ডিভাইসে অ্যাপ ইনস্টল করতে দেয়। লিঙ্ক ব্যবহার করার জন্য পরীক্ষকের রিলিজ অ্যাক্সেস করতে হবে।
    • binary_download_uri - একটি সাইন করা লিঙ্ক যা সরাসরি অ্যাপ বাইনারি ডাউনলোড ও ইনস্টল করে (IPA ফাইল) । এক ঘণ্টা পরে লিঙ্কের মেয়াদ শেষ হয়ে যাবে।

    টেস্টার ও গ্রুপ ম্যানেজ করা

    রিলিজ ডিস্ট্রিবিউট করা ছাড়াও, আপনি Firebase প্রোজেক্টে নতুন টেস্টারদের আমন্ত্রণ জানাতে বা আগে থেকে থাকা টেস্টারদের সরাতে appdistribution:testers:add এবং appdistribution:testers:remove ব্যবহার করতে পারেন।

    আপনার Firebase প্রোজেক্টে কোনও টেস্টারকে যোগ করার পরে আপনি তাকে আলাদা আলাদা রিলিজের জন্য যোগ করতে পারবেন। আপনি কোনও টেস্টারকে সরিয়ে দিলে, তিনি আর আপনার প্রোজেক্টের রিলিজ অ্যাক্সেস করতে পারবেন না। মনে রাখবেন, সম্প্রতি সরানো পরীক্ষকরা এখনও কিছু সময়ের জন্য আপনার রিলিজ অ্যাক্সেস করতে পারবেন।

    যেমন:

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com

    টেস্টারদের ইমেল আইডির মধ্যে স্পেস থাকতে হবে। এছাড়াও, আপনি --file /path/to/testers.txt ব্যবহার করে টেস্টারদের নির্দিষ্ট করতে পারবেন।

    আপনার যদি প্রচুর সংখ্যক টেস্টার থাকে, তাহলে আপনাকে গ্রুপ ব্যবহার করার কথা বিবেচনা করতে হবে: আপনার Firebase প্রোজেক্টে গ্রুপ তৈরি বা মুছে দিতে, আপনি appdistribution:group:create এবং appdistribution:group:delete ব্যবহার করতে পারবেন।

    appdistribution:testers:add এবং appdistribution:testers:remove কমান্ডের জন্য --group-alias ব্যবহার করে গ্রুপ নির্দিষ্ট করুন।

    যেমন:

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team

আপনার বিল্ড ডিস্ট্রিবিউট করার পরে, এটি ১৫০ দিন (পাঁচ মাস) ধরে App Distribution কনসোলের Firebase ড্যাশবোর্ডে উপলভ্য থাকে। বিল্ডের মেয়াদ শেষ হওয়ার ৩০ দিন আগে, কনসোল এবং আপনার পরীক্ষকের টেস্ট ডিভাইসে বিল্ডের তালিকায় মেয়াদ শেষ হওয়ার বিজ্ঞপ্তি দেখানো হয়।

যেসব পরীক্ষককে অ্যাপ পরীক্ষা করার জন্য আমন্ত্রণ জানানো হয়নি, তারা শুরু করার জন্য ইমেলের মাধ্যমে আমন্ত্রণ পান এবং আগে থেকে থাকা পরীক্ষকরা নতুন বিল্ড পরীক্ষা করার জন্য রেডি আছে বলে ইমেলের মাধ্যমে বিজ্ঞপ্তি পান। টেস্ট অ্যাপ কীভাবে ইনস্টল করতে হয় তা জানতে, টেস্টার হিসেবে সেট-আপ করুন দেখুন। আপনি Firebase কনসোলে প্রতিটি পরীক্ষকের স্ট্যাটাস মনিটর করতে পারবেন-তারা আমন্ত্রণ গ্রহণ করেছেন কিনা এবং অ্যাপ ডাউনলোড করেছেন কিনা তা দেখতে পাবেন।

অ্যাপ পরীক্ষা করার জন্য আমন্ত্রণ জানানোর মেয়াদ শেষ হওয়ার আগে পরীক্ষকদের কাছে সেটি গ্রহণ করার জন্য ৩০ দিন সময় থাকে। কোনও আমন্ত্রণ শেষ হওয়ার ৫ দিন আগে, রিলিজের উপর পরীক্ষকের নামের পাশে Firebase কনসোলে মেয়াদ শেষ হওয়ার বিজ্ঞপ্তি দেখানো হয়। টেস্টার সারিতে ড্রপ-ডাউন মেনু ব্যবহার করে আমন্ত্রণ আবার পাঠানো যেতে পারে।

পরবর্তী ধাপ