শেয়ার্ড সোর্স
একটি সাধারণ Git সোর্স থেকে শুরু করুন এবং রিলিজের সাথে যুক্ত সঠিক commit ও ব্যবহারবান্ধব সংস্করণ সংরক্ষণ করুন। ভিন্ন ডিপ্লয়মেন্ট ধরন স্বাধীনভাবে এগোতে পারে, তবু একই সোর্স ইতিহাসের সাথে যুক্ত থাকে।
সফটওয়্যার ডেলিভারি
Microwave Pie-এর সফটওয়্যার ডেলিভারি সক্ষমতা সেলফ-হোস্টেড অ্যাপ বাস্তবায়ন সহজ করার জন্য তৈরি: শেয়ার্ড সোর্স থেকে রিলিজ পরিচালনা করুন, ডিপ্লয়মেন্টের জন্য উপযুক্ত প্যাকেজ তৈরি করুন, লাইসেন্সিং প্রয়োগ করুন এবং ইনস্টলেশন ও আপডেটকে পরিচিত রিলিজের সাথে যুক্ত রাখুন।
শেয়ার্ড ডেলিভারি মডেল
সক্ষমতা
ভিন্ন পরিবেশে সবসময় একই প্যাকেজ ফরম্যাট বা একই সময়ে একই রিলিজের দরকার হয় না। Microwave Pie শেয়ার্ড অ্যাপ্লিকেশন সোর্স, পুনর্ব্যবহারযোগ্য রিলিজ, প্যাকেজ, লাইসেন্স এবং ইনস্টল করা ইনস্ট্যান্স আলাদা রাখে, যাতে প্রতিটি দিক পরিকল্পিতভাবে এগোতে পারে।
একটি সাধারণ Git সোর্স থেকে শুরু করুন এবং রিলিজের সাথে যুক্ত সঠিক commit ও ব্যবহারবান্ধব সংস্করণ সংরক্ষণ করুন। ভিন্ন ডিপ্লয়মেন্ট ধরন স্বাধীনভাবে এগোতে পারে, তবু একই সোর্স ইতিহাসের সাথে যুক্ত থাকে।
স্বচ্ছতা, সরাসরি রানটাইম ডিপ্লয়মেন্ট বা প্ল্যাটফর্ম-নির্দিষ্ট Python ইনস্টলেশন বেশি উপযুক্ত হলে অ্যাপ্লিকেশনটি সোর্স হিসেবে দিন। সোর্স প্যাকেজ কম্পাইলড প্যাকেজের মতো একই রিলিজ ও লাইসেন্সিং মডেল বজায় রাখে।
আরও স্বয়ংসম্পূর্ণ রানটাইম চাইলে কম্পাইলড অ্যাপ্লিকেশন প্যাকেজ দিন। কম্পাইলেশন ডেলিভারির একটি পছন্দ, আলাদা পণ্যধারা নয়, তাই রিলিজের উৎস সঙ্গতিপূর্ণ থাকে।
লাইসেন্স ও লক্ষ্য ডিপ্লয়মেন্ট প্রসঙ্গ আগে থেকেই যুক্ত এমন প্যাকেজ ইস্যু করুন। প্যাকেজ জীবনচক্র, লাইসেন্স অবস্থা, ডাউনলোড, ইনস্টলেশন, আপডেট, বাতিল এবং বন্ধ করা পরে পুনর্গঠন না করে একসাথে পরিচালনা করা যায়।
প্রয়োজন হলে Raspberry Pi, GCP, সোর্স এবং কম্পাইলড ডিপ্লয়মেন্ট ধরন ভিন্ন রিলিজ স্তরে থাকতে পারে। অনুপস্থিত Git commits ডিপ্লয়মেন্ট ধরন অনুযায়ী এবং পুরো অ্যাপ্লিকেশন জুড়েও দেখা যায়।
অনুমোদিত আপডেট পাওয়া গেলে পরিচালিত অ্যাপ্লিকেশন তা জোর না করেই স্বয়ংক্রিয়ভাবে দেখাতে পারে। অ্যাডমিন অ্যাপ UI-তে ঠিক করেন কখন আপডেট প্রস্তুত ও প্রয়োগ হবে; রিস্টার্টের পরে Package এবং License সম্পর্ক অক্ষুণ্ণ রেখে ইনস্টল করা রিলিজ শেয়ার্ড ডেলিভারি সার্ভিসে নিশ্চিত করা যায়।
বাস্তবায়ন
একটি সফটওয়্যার প্যাকেজে অ্যাপ রিলিজকে কার্যকর ডিপ্লয়মেন্টে রূপ দিতে প্রয়োজনীয় বাস্তবায়ন প্রসঙ্গ থাকতে পারে: লক্ষ্য প্ল্যাটফর্ম, প্যাকেজ ফরম্যাট, ইনস্টলেশন আচরণ, রিলিজ পরিচয় এবং লাইসেন্সিং সম্পর্ক।
এতে প্রতিটি পরিবেশকে বিল্ড ও ডেলিভারি সিদ্ধান্ত নতুন করে তৈরি করতে না হয়ে পরিচিত রিলিজ থেকে বাস্তবায়ন শুরু করা যায়। নতুন রিলিজ উপযুক্ত হলে বিদ্যমান Package এবং License সম্পর্ক বজায় রেখে নির্বাচিত রিলিজ পরিকল্পিতভাবে এগিয়ে নেওয়া যায়।
Application Releases বাস্তবে তৈরি artifact ও Git পরিচয় সংরক্ষণ করে।
উপলভ্যতা স্বয়ংক্রিয়ভাবে জানানো যেতে পারে, কিন্তু ডাউনলোড, প্রস্তুতি, প্রয়োগ এবং রিস্টার্ট অ্যাডমিনের সচেতন পদক্ষেপ হিসেবে থাকে।
প্যাকেজ, লাইসেন্স ও ইনস্টল করা ইনস্ট্যান্স ইনস্টলেশন, আপডেট, বাতিল ও বন্ধ করার পুরো সময় জুড়ে যুক্ত থাকে।
Blackcap
Blackcap সমর্থিত Raspberry Pi ও GCP পরিবেশে সোর্স বা কম্পাইলড প্যাকেজ দিয়ে ডিপ্লয় করা যায়, একই সাথে রিলিজ, প্যাকেজ, লাইসেন্স ও আপডেট আচরণ সামঞ্জস্যপূর্ণ রাখা যায়।