CI/CD ও fastlane ব্যবহার করে QA টেস্টারদের কাছে Apple অ্যাপ ডিস্ট্রিবিউট করার পেশাদার পদ্ধতি

এই ডকুমেন্টটি Firebase App Distribution এবং ফাস্টলেন ব্যবহার করার জন্য পেশাদার পদ্ধতিগুলি উপস্থাপন করে যাতে আপনার Apple প্ল্যাটফর্ম প্রি-রিলিজ টেস্টিং ওয়ার্কফ্লো CI/CD পরিবেশে টেকসই এবং পুনরাবৃত্তিযোগ্য হয়। এই ডকুমেন্ট fastlane-এর উপর ফোকাস করলেও, আমরা Firebase কনসোল, Firebase CLI এবং পাবলিক Firebase App Distribution API-এর মাধ্যমে উপলভ্য সমাধানগুলিও বর্ণনা করি যাতে আপনি আরও নমনীয়তা পান। এছাড়াও, আমরা রিলিজ ও টেস্টার সংক্রান্ত সীমা বর্ণনা করি যাতে আপনি সেরা অভিজ্ঞতার জন্য আগে থেকেই পরিকল্পনা করতে পারেন।

আপনি Android ব্যবহার করলে, CI/CD ব্যবহার করে QA টেস্টারদের Android অ্যাপ ডিস্ট্রিবিউট করার পেশাদার পদ্ধতি দেখুন।

শুরু করার আগে

এই ডকুমেন্টে উল্লেখ করা পেশাদার পদ্ধতি প্রয়োগ করার আগে, Firebase কনসোলে প্রতিটি অ্যাপের জন্য App Distribution চালু করতে ভুলবেন না। আপনি App Distribution চালু না করলে, ৪০৪ নম্বর সমস্যা দেখতে পাবেন।

App Distribution চালু করতে, এই ধাপগুলি অনুসরণ করুন:

  1. Firebase কনসোলে App Distribution পৃষ্ঠা খুলুন।

  2. আপনার iOS অ্যাপ বেছে নিন।

  3. শুরু করা যাক বিকল্পে ক্লিক করুন।

CI/CD ব্যবহার করে আপনার প্রি-রিলিজ টেস্টিং ওয়ার্কফ্লো অটোমেট করুন

আপনি যদি আপনার পরীক্ষকদের জন্য অ্যাপ তৈরি এবং রিলিজ করার প্রসেস অটোমেট করতে চান এবং CI/CD ব্যবহার করেন, তাহলে আমরা আপনাকে fastlane ব্যবহার করার সাজেশন দিই। আরেকটি বিকল্প হল Firebase CLI ব্যবহার করা, যা আপনাকে Firebase প্রোডাক্টের একটি বিস্তৃত অ্যারে অ্যাক্সেস করতে দেয়।

ফাস্টলেন ব্যবহার করুন

fastlane ব্যবহার করে আপনার CI/CD পাইপলাইনে App Distribution ইন্টিগ্রেট করুন, এটি একটি ওপেন সোর্স টুল যা iOS এবং Android অ্যাপ তৈরি ও রিলিজ করার প্রসেস অটোমেট করে। আপনার লেটেস্ট রিলিজ অটোমেটিক তৈরি করে এবং পরীক্ষকদের মধ্যে ডিস্ট্রিবিউট করে, আপনি নিশ্চিত করেন যে পরীক্ষকদের কাছে সবসময় আপনার অ্যাপের সবচেয়ে আপ-টু-ডেট টেস্ট ভার্সন আছে।

ফাস্টলেনের সাথে কীভাবে App Distribution ইন্টিগ্রেট করতে হয় তা জানতে, ফাস্টলেন ব্যবহার করে 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 ডেভেলপার কনসোলে যোগ করে এবং তারপর অ্যাপটি আবার তৈরি করে এবং এটি ডিস্ট্রিবিউট করে, দেখুন App Distribution এবং ফাস্টলেনের মাধ্যমে আপনার প্রি-রিলিজ iOS বিল্ড আরও দ্রুত ডিস্ট্রিবিউট করুন।

সম্ভাব্য টেস্টারদের টেস্টিংয়ের জন্য সেল্ফ-রেজিস্টার করার সুবিধা দিন

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

আমন্ত্রণের লিঙ্কের ব্যবহারের ক্ষেত্রে কোম্পানির ডগফুড প্রোগ্রাম, বড় QA টিম সহ সংস্থা এবং ডেভেলপার গ্রুপ অন্তর্ভুক্ত যারা চান যে স্বতন্ত্র ক্লায়েন্টরা পরীক্ষকের অ্যাক্সেস নিয়ন্ত্রণ করতে সক্ষম হোক।

আমরা সাজেস্ট করি যে আপনি কোনও গ্রুপের জন্য আমন্ত্রণের লিঙ্ক তৈরি করুন। আমন্ত্রণ লিঙ্ক ব্যবহার করে সাইন-আপ করা যেকোনও টেস্টারকে পরবর্তী রিলিজের জন্য অটোমেটিক যোগ করা হয়।

আরও জানতে, আমন্ত্রণের লিঙ্ক তৈরি করুন এবং গ্রুপ থেকে টেস্টার যোগ করুন ও সরান দেখুন।

পরীক্ষকরা আপনার জন্য গুরুত্বপূর্ণ ভার্সনটি পরীক্ষা করছেন কিনা তা নিশ্চিত করুন

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

  • রিলিজ লিঙ্ক: আপনি যখন কোনও নির্দিষ্ট ভার্সন টেস্টারদের সাথে শেয়ার করতে চান, তখন এই ফিচার ব্যবহার করুন। রিলিজ লিঙ্ক কীভাবে ব্যবহার করতে হয় তা জানতে, Firebase কনসোল ব্যবহার করে iOS অ্যাপ টেস্টারদের মধ্যে ডিস্ট্রিবিউট করুন নিবন্ধটি দেখুন। আপনার বিল্ড অটোমেশন টুলের সাথে ব্যবহার করার জন্য এইসব লিঙ্ক আমাদের Firebase এবং fastlane কমান্ড-লাইন (CLI) টুলের সাথেও উপলভ্য।

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

কোম্পানি ছেড়ে চলে যাওয়া টেস্টারদের অ্যাক্সেস অটোমেটিক সরিয়ে দেওয়া

আপনার CI/CD ইন্টার্নাল টেস্টিং ফ্লো চালু হয়ে গেলে, আপনাকে নিশ্চিত করতে হবে যে কোম্পানি ছেড়ে চলে যাওয়া ব্যক্তিদের কাছে যেন আপনার ইন্টার্নাল বিল্ডের অ্যাক্সেস আর না থাকে। বিল্ডে টেস্টার অ্যাক্সেস ম্যানেজ করতে আপনাকে সাহায্য করার জন্য, App Distribution নিম্নলিখিত বিকল্পগুলি প্রদান করে: