যদি আপনার স্বয়ংক্রিয় রোলআউট সক্ষম থাকে, তাহলে প্রতিবার যখন আপনি আপনার GitHub রিপোজিটরির লাইভ শাখায় একটি নতুন কমিট পুশ করবেন, তখন App Hosting স্বয়ংক্রিয়ভাবে আপনার অ্যাপের একটি নতুন সংস্করণ রোলআউট করবে। আপনি Firebase কনসোলে অথবা App Hosting GitHub চেকে রোলআউটের অবস্থা পরীক্ষা করতে পারেন।
অতিরিক্তভাবে, App Hosting CI/CD ইন্টিগ্রেশন বা অন্য যেকোনো ক্ষেত্রে যেখানে আপনি জোর করে রোলআউট করতে চান, ম্যানুয়ালি ট্রিগার করা রোলআউট সমর্থন করে।
রোলআউটগুলি দেখুন
Firebase কনসোল আপনার অ্যাপের সমস্ত রোলআউট সম্পর্কে বিস্তারিত তথ্য অ্যাক্সেস প্রদান করে। App Hosting এ, আপনি যে ব্যাকএন্ডের রোলআউটগুলি দেখতে চান তার জন্য View নির্বাচন করুন। ব্যাকএন্ডের জন্য রোলআউট ট্যাবটি এই ব্যাকএন্ডের জন্য সমস্ত রোলআউটের ইতিহাস তালিকাভুক্ত একটি টেবিল প্রদর্শন করে।
প্রতিটি রোলআউট এন্ট্রিতে Cloud Build জব এবং রোলআউটের সূত্রপাতকারী পরিবর্তন বা প্রতিশ্রুতির লিঙ্ক থাকে, সাথে লেখক, তৈরির তারিখ এবং রোলআউটের স্থিতি সম্পর্কে প্রাথমিক তথ্য থাকে।
- Cloud Build কাজ হল বিল্ড পরিবেশ যেখানে App Hosting আপনার অ্যাপের বিল্ড কমান্ড চালায়। আপনি বিল্ড আইডিতে ক্লিক করে Cloud Build লগ অ্যাক্সেস করতে পারেন।
- পরিবর্তন হল GitHub কমিট বা অন্য কোনও পদক্ষেপ যা রোলআউটকে ট্রিগার করেছিল।
ম্যানুয়ালি একটি রোলআউট ট্রিগার করুন
যদি আপনি আপনার GitHub সোর্স থেকে নতুন কমিট না করে ম্যানুয়ালি একটি রোলআউট ট্রিগার করতে চান, তাহলে আপনি Firebase কনসোল অথবা Firebase CLI থেকে একটি রোলআউট তৈরি করতে পারেন। এটি নিম্নলিখিত ক্ষেত্রে কার্যকর:
- স্থির বিষয়বস্তুর পুনর্জন্ম জোর করে করা।
- একটি CI/CD সিস্টেমকে রোলআউট ট্রিগার করার অনুমতি দেওয়া।
- নির্দিষ্ট তারিখ বা সময়ের মধ্যে উৎপাদন রোলআউট সীমাবদ্ধ করা।
Firebase কনসোলে একটি রোলআউট ট্রিগার করতে:
- App Hosting এ, আপনি যে ব্যাকএন্ডের জন্য একটি রোলআউট তৈরি করতে চান তার জন্য ভিউ নির্বাচন করুন।
- ব্যাকএন্ড ড্যাশবোর্ড সারাংশে, রোলআউট তৈরি করুন নির্বাচন করুন।
- স্থাপনের জন্য শাখা নির্বাচন করুন।
- স্থাপনের জন্য কমিটটি নির্বাচন করুন, হয় সর্বশেষ কমিট অথবা তার কমিট আইডি দ্বারা নির্দিষ্ট করা আগের কমিট।
- তৈরি করুন নির্বাচন করুন। স্থিতি এবং রোলআউটের জন্য একটি বিল্ড নম্বর রোলআউট ইতিহাস টেবিলে প্রদর্শিত হবে। রোলআউট প্রক্রিয়া সম্পূর্ণ হলে, এই রোলআউটটি বর্তমান রোলআউট হিসাবে প্রদর্শিত হবে।
Firebase CLI তে একটি রোলআউট ট্রিগার করতে, নিম্নলিখিত কমান্ডটি চালান এবং অনুরোধ করা হলে রোলআউটের জন্য শাখাটি নির্বাচন করুন:
firebase apphosting:rollouts:create BACKEND_ID
বিকল্পভাবে, আপনি --git-branch বিকল্পটি ব্যবহার করে একটি নির্দিষ্ট শাখার জন্য সর্বশেষ কমিটের জন্য একটি রোলআউট শুরু করতে পারেন:
firebase apphosting:rollouts:create BACKEND_ID
--git_branch BRANCH_NAME
আপনি --git-commit বিকল্পটি ব্যবহার করে একটি নির্দিষ্ট কমিট সহ একটি রোলআউট তৈরি করতে পারেন:
firebase apphosting:rollouts:create BACKEND_ID
--git_commit COMMIT_ID
পূর্ববর্তী রোলআউট পুনরুদ্ধার করুন
অ্যাপ হোস্টিং আপনাকে পূর্ববর্তী রোলআউট পুনরুদ্ধার করার জন্য দুটি বিকল্প দেয়:
- পুনর্নির্মাণ না করেই তাৎক্ষণিকভাবে পিছিয়ে যান
- পুনঃনির্মাণ করুন এবং পূর্ববর্তী সংস্করণে ফিরে যান
একটি তাৎক্ষণিক রোলব্যাক তৈরি করুন
মাঝে মাঝে আপনার অ্যাপের পুরোনো সংস্করণে দ্রুত ফিরে যেতে হতে পারে - উদাহরণস্বরূপ, যদি আপনি একটি নতুন মোতায়েন করা রোলআউটে একটি গুরুতর বাগ খুঁজে পান অথবা আপনি একটি ফ্ল্যাকি বিল্ডের সম্মুখীন হন যা নতুন রোলআউটগুলিকে ব্লক করছে। এই ধরনের ক্ষেত্রে আপনি পূর্ববর্তী রোলআউট থেকে আপনার পছন্দের একটি বিদ্যমান কন্টেইনার চিত্র পুনরুদ্ধার করতে পারেন। এই চিত্রটি পুনর্নির্মাণ করা হয়নি, তবে এটি প্রথম তৈরির সময় থেকে কোড এবং পরিবেশ কনফিগারেশন ব্যবহার করে।
তাৎক্ষণিক রোলব্যাক তৈরি করতে:
- App Hosting এ, আপনি যে ব্যাকএন্ডের জন্য রোলব্যাক তৈরি করতে চান তার জন্য ভিউ নির্বাচন করুন।
- রোলআউটস ট্যাবটি নির্বাচন করুন।
- ব্যাকএন্ডের ইতিহাস টেবিলে, পূর্ববর্তী বিল্ডের জন্য তিন-বিন্দু মেনু নির্বাচন করুন।
- Roll back to this build নির্বাচন করুন এবং নিশ্চিত করুন।
পুনর্নির্মাণ এবং রোল ব্যাক
যদি আপনি আপনার অ্যাপের পুরোনো সংস্করণে ফিরে যেতে চান কিন্তু এখনও বর্তমান কনফিগারেশন বজায় রাখতে চান, তাহলে রোলব্যাক প্রক্রিয়ার অংশ হিসেবে আপনি অ্যাপটি পুনর্নির্মাণ করতে পারেন। উদাহরণস্বরূপ, যদি আপনার সাম্প্রতিক সংস্করণটি সিক্রেট ম্যানেজারে একটি API কী মান আপডেট করে থাকে, তাহলে পুনর্নির্মাণ নিশ্চিত করতে পারে যে রোলব্যাক করার পরে আপনার অ্যাপে নতুন কী ব্যবহার করা হচ্ছে।
পুনর্নির্মাণ এবং রোল ব্যাক করতে:
- App Hosting এ, আপনি যে ব্যাকএন্ডের জন্য রোলব্যাক তৈরি করতে চান তার জন্য ভিউ ড্যাশবোর্ড নির্বাচন করুন।\
- রোলআউটস ট্যাবটি নির্বাচন করুন।
- রোলআউট তৈরি করুন নির্বাচন করুন।
- Create a rollout ডায়ালগে, Earlier commit চেক করুন এবং তারপর আপনি যে সংস্করণটি পুনর্নির্মাণ করতে চান এবং রোল ব্যাক করতে চান তার commit ID লিখুন। commit ID হল আপনার Rollout ইতিহাসে তালিকাভুক্ত প্রতিটি rollout এর জন্য "Change details" এর অংশ, যা লেবেলের বন্ধনীতে থাকে।
- রোলব্যাক শুরু করতে তৈরি নির্বাচন করুন।
রোলআউট সেটিংস পরিবর্তন করুন
আপনি রোলআউটের জন্য লাইভ শাখা পরিবর্তন করতে পারেন এবং ব্যাকএন্ডের জন্য ড্যাশবোর্ডের সেটিংস > ডিপ্লয়মেন্ট ভিউতে নিয়ন্ত্রণ ব্যবহার করে স্বয়ংক্রিয় রোলআউটগুলি অক্ষম বা সক্ষম করতে পারেন।
- App Hosting এ, আপনি যে ব্যাকএন্ডে রোলআউট সেটিংস আপডেট করতে চান তার জন্য ভিউ নির্বাচন করুন।
- ব্যাকএন্ড ড্যাশবোর্ডে, সেটিংস নির্বাচন করুন। ডিফল্ট ভিউ ডোমেইন এবং কাস্টম ডোমেইন সম্পর্কে তথ্য প্রদর্শন করে।
- ডিপ্লয়মেন্ট ভিউ নির্বাচন করুন। এই ভিউতে, আপনি রোলআউটের জন্য লাইভ ব্রাঞ্চ পরিবর্তন করতে পারেন এবং স্বয়ংক্রিয় রোলআউটগুলি অক্ষম বা সক্ষম করতে পারেন। এছাড়াও, অ্যাপ রুট ডিরেক্টরি এবং ব্যাকএন্ডের জন্য পরিবেশ সেট করার বিকল্প রয়েছে ( Deploy to multiple environments দেখুন)।