এই ডকুমেন্টটি Firebase App Distribution এবং fastlane ব্যবহার করার জন্য পেশাদার পদ্ধতি সম্পর্কে জানায়, যাতে আপনার Apple প্ল্যাটফর্মের প্রি-রিলিজ টেস্টিং ওয়ার্কফ্লো CI/CD এনভায়রনমেন্টে টেকসই ও পুনরাবৃত্তিযোগ্য হয়। এই ডকুমেন্টটি fastlane-এর উপর ফোকাস করলেও, আপনাকে আরও বেশি নমনীয়তা দিতে, আমরা Firebase কনসোল, Firebase CLI এবং পাবলিক Firebase App Distribution API-এর মাধ্যমে উপলভ্য সমাধানগুলিও বর্ণনা করি। এছাড়াও, আমরা রিলিজ ও টেস্টার সংক্রান্ত সীমা বর্ণনা করি যাতে আপনি সেরা অভিজ্ঞতার জন্য আগে থেকেই প্ল্যান করতে পারেন।
আপনি যদি Android ব্যবহার করেন, তাহলে CI/CD ব্যবহার করে QA টেস্টারদের কাছে Android অ্যাপ ডিস্ট্রিবিউট করার পেশাদার পদ্ধতি দেখুন।
শুরু করার আগে
এই ডকুমেন্টে উল্লেখ করা সেরা পদ্ধতি প্রয়োগ করার আগে, Firebase কনসোলে প্রতিটি অ্যাপের জন্য App Distribution চালু করতে ভুলবেন না। আপনি App Distribution চালু না করলে, 404 ত্রুটি দেখতে পাবেন।
App Distribution চালু করতে, এইসব ধাপ অনুসরণ করুন:
Firebase কনসোলে App Distribution পৃষ্ঠাটি খুলুন।
আপনার iOS অ্যাপ বেছে নিন।
শুরু করুন বিকল্পে ক্লিক করুন।
CI/CD ব্যবহার করে আপনার প্রি-রিলিজ টেস্টিং ওয়ার্কফ্লো অটোমেট করা
আপনি যদি নিজের টেস্টারদের জন্য অ্যাপ তৈরি ও রিলিজ করার প্রসেস অটোমেট করতে চান এবং CI/CD ব্যবহার করেন, তাহলে আমরা সাজেস্ট করি যে আপনি fastlane ব্যবহার করুন। আরেকটি বিকল্প হল, Firebase CLI ব্যবহার করা, যা আপনাকে Firebase প্রোডাক্টের একটি বিস্তৃত অ্যারে অ্যাক্সেস করতে দেয়।
fastlane ব্যবহার করা
fastlane ব্যবহার করে আপনার CI/CD পাইপলাইনে App Distribution ইন্টিগ্রেট করুন। এটি একটি ওপেন সোর্স টুল যা iOS এবং Android অ্যাপ তৈরি ও রিলিজ করার প্রসেস অটোমেট করে। টেস্টারদের কাছে আপনার লেটেস্ট রিলিজ অটোমেটিক বিল্ড ও ডিস্ট্রিবিউট করার মাধ্যমে, আপনি নিশ্চিত করেন যে আপনার অ্যাপের সবচেয়ে আপ-টু-ডেট টেস্ট ভার্সন সবসময় টেস্টারদের কাছে আছে।
fastlane-এর সাথে App Distribution কীভাবে ইন্টিগ্রেট করতে হয় তা জানতে, fastlane ব্যবহার করে পরীক্ষকদের কাছে iOS অ্যাপ ডিস্ট্রিবিউট করুন দেখুন। এছাড়াও, fastlane ইন্টিগ্রেশন প্রসেস সম্পর্কে জানতে কোডল্যাব দেখুন।
Firebase CLI ব্যবহার করুন
প্রোগ্রামাটিক উপায়ে পরীক্ষকদের কাছে বিল্ড ডিস্ট্রিবিউট করার জন্য Firebase CLI টুল ব্যবহার করুন App Distribution। আপনি কোনও বিল্ডের জন্য টেস্টার ও রিলিজ নোট নির্দিষ্ট করতে পারবেন।
অ্যাপের Firebase অ্যাপ আইডি উল্লেখ করে আপনার লেটেস্ট iOS বিল্ড test.ipa ডিস্ট্রিবিউট করুন।
ঐচ্ছিকভাবে রিলিজ নোট ও পরীক্ষকদের ইমেল আইডি সহ ফাইল যোগ করুন:
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
আপনার বিল্ড অটোমেট করার জন্য Firebase CLI ব্যবহার করা সম্পর্কে আরও জানতে, Firebase CLI ব্যবহার করে পরীক্ষকদের কাছে iOS অ্যাপ ডিস্ট্রিবিউট করুন দেখুন।
যাচাইকরণের জন্য পরিষেবা ক্রেডেনশিয়াল ব্যবহার করা
পরিষেবা অ্যাকাউন্টের সাথে App Distribution fastlane প্লাগ-ইন বা Firebase CLI ব্যবহার করুন, যা অ্যাপ্লিকেশন ডিফল্ট ক্রেডেনশিয়াল সুবিধা নেয় এবং আপনার CI ম্যানেজ করতে সাহায্য করে। পরিষেবা অ্যাকাউন্ট হল এক ধরনের Google অ্যাকাউন্ট যা ব্যবহারকারীদের পরিবর্তে অ্যাপ্লিকেশনকে উপস্থাপন করে। আপনার CI সিস্টেম, App Distribution ওয়ার্কলোড চালানোর জন্য পরিষেবা অ্যাকাউন্ট ব্যবহার করতে পারে। আরও জানতে, পরিষেবা অ্যাকাউন্টের মাধ্যমে যাচাই করুন দেখুন।
আপনি যদি ওয়ার্কলোড আইডেন্টিটি ফেডারেশন ব্যবহার করেন, তাহলে পরিষেবা অ্যাকাউন্ট কীয়ের পরিবর্তে ক্রেডেনশিয়াল কনফিগারেশন ফাইল জেনারেট ও ব্যবহার করতে পারবেন।
রিলিজের সীমা মনে রাখবেন
App Distribution প্রতিটি অ্যাপে সর্বাধিক ১,০০০টি রিলিজ সাপোর্ট করে। এর অর্থ হল, আপনি রিলিজের সীমা অতিক্রম করলে, App Distribution অটোমেটিক সীমা অতিক্রম করা সবচেয়ে পুরনো রিলিজ মুছে দেয়। রিলিজ সংক্রান্ত সীমা কীভাবে ম্যানেজ করতে হয় তা জানতে, অ্যাপ রিলিজ কতদিন উপলভ্য থাকে? লিঙ্কে দেখুন
একাধিক রিলিজে একই টেস্টারদের সেট যোগ করা
আপনার রিলিজে প্রচুর সংখ্যক টেস্টার যোগ করতে চাইলে, App Distribution-এর বাল্ক টেস্টার ম্যানেজমেন্ট ফাংশনালিটি ব্যবহার করুন।
আমরা সাজেস্ট করি যে একাধিক রিলিজে একই টেস্টারকে যোগ করার জন্য গ্রুপ ব্যবহার করুন। গ্রুপ অ্যাক্সেস কন্ট্রোল লিস্ট হিসেবে কাজ করে; আপনি কোনও গ্রুপ থেকে কোনও পরীক্ষককে সরিয়ে দিলে, সেই গ্রুপে ডিস্ট্রিবিউট করা সব রিলিজের অ্যাক্সেস তিনি হারান। আরও জানতে, গ্রুপ থেকে পরীক্ষক যোগ করা ও সরানো দেখুন।
ম্যানেজ করার জন্য আপনার কাছে অনেক টেস্টার থাকলে, আপনি Firebase কনসোল ব্যবহার করে একসাথে অনেক টেস্টার যোগ করতে ও মুছে দিতে পারবেন। টেস্টারদের যোগ করা ও সরানোর প্রসেস অটোমেট করতে, Firebase CLI, fastlane, অথবা পাবলিক Firebase App Distribution API ব্যবহার করুন।
টেস্টারদের সংখ্যায় সীমাবদ্ধতা সম্পর্কে মনে রাখবেন
App Distribution আপনাকে Firebase প্রোজেক্ট বা App Distribution গ্রুপে যোগ করতে পারবেন এমন পরীক্ষকের সংখ্যা সীমিত করে। এইসব সীমা পেরিয়ে গেলে, আপনি অতিরিক্ত টেস্টারদের কাছে নিজের অ্যাপ ডিস্ট্রিবিউট করতে পারবেন না। টেস্টারের সীমা সম্পর্কে আরও জানতে, আমার অ্যাপে কি টেস্টার যোগ করার কোনও সীমা আছে? দেখুন
নতুন iOS টেস্টার ডিভাইস ম্যানেজ ও অটোমেটিক যোগ করা
অতিরিক্ত iOS টেস্টার ডিভাইস রেজিস্টার করতে সাহায্য করার জন্য, App Distribution আপনাকে ইমেল বা CSV ফাইল ব্যবহার করে নতুন iOS টেস্টার ডিভাইস সম্পর্কে জানিয়ে Apple Developer Portal-এ আপনার iOS টেস্টার ডিভাইস ম্যানেজ করতে সাহায্য করে। আরও জানতে, CSV ফাইল থেকে টেস্টার ইমপোর্ট করুন দেখুন। এছাড়াও, আপনি প্রোগ্রাম্যাটিক উপায়ে fastlane ব্যবহার করে নতুন ডিভাইস এক্সপোর্ট করতে পারবেন।
UDID অটোমেটিক ডাউনলোড করে, Apple ডেভেলপার কনসোলে যোগ করে, তারপর অ্যাপ আবার বিল্ড করে ডিস্ট্রিবিউট করে এমন fastlane অ্যাকশন কীভাবে সেট-আপ করবেন তা জানতে, App Distribution ও fastlane-এর মাধ্যমে আপনার প্রি-রিলিজ iOS বিল্ড আরও দ্রুত ডিস্ট্রিবিউট করুন দেখুন।
সম্ভাব্য পরীক্ষার্থীদের টেস্টিংয়ের জন্য সেল্ফ-রেজিস্টার করার সুবিধা দেওয়া
আরও বেশি পরীক্ষকের কাছে আপনার অ্যাপ ডিস্ট্রিবিউট করা সহজ করতে, আমরা সাজেস্ট করি যে আপনি আমন্ত্রণ জানানোর লিঙ্ক ব্যবহার করুন। আমন্ত্রণ লিঙ্ক হল একটি অনন্য URL যা পরীক্ষকদের কোনও অ্যাপ পরীক্ষা করার জন্য সাইন-আপ করতে তাদের ইমেল আইডি লিখতে দেয়। অ্যাপ পরীক্ষকদের তালিকায় ব্যবহারকারীদের নিজেদের যোগ করতে দেওয়া হল আপনার ইন্টার্নাল টেস্টিং বেস বাড়ানোর একটি নির্বিঘ্নে উপায়।
আমন্ত্রণ লিঙ্কের ব্যবহারিক উদাহরণগুলির মধ্যে রয়েছে কোম্পানির ডগফুড প্রোগ্রাম, বড় QA টিম সহ সংস্থা এবং ডেভেলপার গ্রুপ যারা চায় যে স্বতন্ত্র ক্লায়েন্টরা টেস্টার অ্যাক্সেস কন্ট্রোল করতে পারুক।
আমরা সাজেস্ট করি যে আপনি গ্রুপের জন্য আমন্ত্রণ জানানোর লিঙ্ক তৈরি করুন। আমন্ত্রণ লিঙ্ক ব্যবহার করে সাইন-আপ করা যেকোনও পরীক্ষককে পরবর্তী রিলিজের জন্য অটোমেটিক যোগ করা হয়।
আরও জানতে, আমন্ত্রণ লিঙ্ক তৈরি করুন এবং গ্রুপ থেকে পরীক্ষক যোগ করুন ও সরিয়ে দিন দেখুন।
আপনি যে ভার্সন নিয়ে চিন্তিত, পরীক্ষকরা সেটিই পরীক্ষা করছেন কিনা তা নিশ্চিত করুন
নতুন ভার্সন আপলোড করা হলে, আপনার পরীক্ষকদের ইমেলের মাধ্যমে জানানো হয়। এই বিজ্ঞপ্তি সম্পূর্ণ করতে, আপনি নিম্নলিখিত ফিচার ব্যবহার করতে পারেন – রিলিজ লিঙ্ক এবং ইন-অ্যাপ অ্যালার্ট – যাতে আপনার পরীক্ষকরা আপনার পছন্দের নির্দিষ্ট অ্যাপ ভার্সন পরীক্ষা করছেন তা নিশ্চিত করা যায়:
রিলিজ লিঙ্ক: আপনি পরীক্ষকদের সাথে কোনও নির্দিষ্ট ভার্সন শেয়ার করতে চাইলে এই ফিচার ব্যবহার করুন। রিলিজ লিঙ্ক কীভাবে ব্যবহার করতে হয় তা জানতে, Firebase কনসোল ব্যবহার করে পরীক্ষকদের কাছে iOS অ্যাপ ডিস্ট্রিবিউট করুন দেখুন। আপনার বিল্ড অটোমেশন টুলের সাথে ব্যবহার করার জন্য আমাদের Firebase এবং fastlane কমান্ড-লাইন (CLI) টুলের সাথেও এইসব লিঙ্ক উপলভ্য।
ইন-অ্যাপ অ্যালার্ট: আপনার টেস্টাররা আপনার অ্যাপের লেটেস্ট ভার্সন পরীক্ষা করছেন কিনা তা নিশ্চিত করতে চাইলে এইসব অ্যালার্ট ব্যবহার করুন। Firebase App Distribution iOS SDK ইন্টিগ্রেট করার মাধ্যমে, আপনার অ্যাপের নতুন বিল্ড উপলভ্য হলে, আপনি সরাসরি অ্যাপের মধ্যে আপনার টেস্টারদের অ্যালার্ট দেখাতে পারবেন। কীভাবে ইন-অ্যাপ অ্যালার্ট যোগ করতে হয় তা জানতে, নতুন বিল্ড সম্পর্কে পরীক্ষকদের জানান দেখুন।
যেসব টেস্টার কোম্পানি ছেড়ে চলে যান তাদের অ্যাক্সেস অটোমেটিক সরিয়ে দেওয়া
আপনার CI/CD ইন্টার্নাল টেস্টিং ফ্লো চালু হয়ে গেলে, আপনাকে এটি নিশ্চিত করতে হবে যে যারা কোম্পানি ছেড়ে চলে গেছেন তারা যেন আপনার ইন্টার্নাল বিল্ড আর অ্যাক্সেস করতে না পারেন। বিল্ডে পরীক্ষকের অ্যাক্সেস ম্যানেজ করতে সাহায্য করার জন্য, App Distribution নিম্নলিখিত বিকল্পগুলি প্রদান করে:
fastlane: আপনার Fastfile ফাইল ব্যবহার করুন অথবা সরাসরি fastlane অ্যাকশন রান করুন। টেস্টারদের সরিয়ে দেওয়ার জন্য fastlane ব্যবহার করা সম্পর্কে আরও জানতে, fastlane ব্যবহার করে টেস্টারদের কাছে iOS অ্যাপ ডিস্ট্রিবিউট করা লিঙ্ক দেখুন।
**সর্বজনীন Firebase App Distribution API: **
testers.batchRemoveএন্ডপয়েন্ট ব্যবহার করুন।