Azure DevOps এর মধ্যে Build Pipeline এবং Release Pipeline দুটি গুরুত্বপূর্ণ ধারণা যা Continuous Integration (CI) এবং Continuous Deployment (CD) প্রক্রিয়া অটোমেট করার জন্য ব্যবহৃত হয়।
1. Build Pipeline
Build Pipeline হলো একটি স্বয়ংক্রিয় প্রক্রিয়া, যা সোর্স কোডকে কম্পাইল, টেস্ট, এবং প্যাকেজ করে। এটি মূলত সোর্স কোডের শেষ সংস্করণটি পরীক্ষিত এবং ডেপ্লয় করার জন্য প্রস্তুত করে।
Build Pipeline তৈরি করার জন্য পদক্ষেপ:
- Azure DevOps Portal-এ লগইন করুন।
- Project নির্বাচন করুন যেখানে আপনি Build Pipeline তৈরি করতে চান।
- Pipelines মেনুতে গিয়ে Create Pipeline-এ ক্লিক করুন।
- Repository নির্বাচন করুন (যেমন GitHub, Azure Repos, Bitbucket, বা অন্যান্য সোর্স কন্ট্রোল সিস্টেম)।
- আপনার রিপোজিটরি থেকে Pipeline YAML ফাইল নির্বাচন করুন, বা আপনি যদি GUI-ভিত্তিক পদ্ধতি চান, তবে Classic Editor ব্যবহার করতে পারেন।
- Build Agent নির্বাচন করুন (যেমন Microsoft-hosted agents বা Self-hosted agents)।
- Build Tasks যুক্ত করুন:
- Compile/Build: সোর্স কোড কম্পাইল করা।
- Test: ইউনিট টেস্ট চালানো।
- Publish: তৈরি করা বিল্ড প্যাকেজ বা অ্যাসেম্বলি ফাইলগুলো প্রকাশ করা।
- Save and Run: বিল্ড পিপলাইন সেভ করুন এবং রান করুন।
2. Release Pipeline
Release Pipeline একটি প্রক্রিয়া, যা বিল্ড হওয়া কোড এবং প্যাকেজকে বিভিন্ন এনভায়রনমেন্ট (যেমন Development, Testing, Production) এ ডিপ্লয় করে। Release Pipeline মূলত বিল্ডেড অ্যাপ্লিকেশন বা কোড ডেপ্লয়মেন্টের জন্য ব্যবহৃত হয় এবং এটি Continuous Deployment (CD) এর অংশ।
Release Pipeline তৈরি করার জন্য পদক্ষেপ:
- Azure DevOps Portal-এ লগইন করুন।
- Project নির্বাচন করুন যেখানে আপনি Release Pipeline তৈরি করতে চান।
- Pipelines মেনুতে গিয়ে Create Release Pipeline-এ ক্লিক করুন।
- Artifact যোগ করুন:
- আপনার বিল্ড পিপলাইন থেকে তৈরি হওয়া বিল্ড অ্যাপ্লিকেশনকে Artifact হিসেবে নির্বাচন করুন।
- Stages যোগ করুন:
- প্রাথমিকভাবে একটি স্টেজ (যেমন: Development, Staging) তৈরি করুন।
- পরবর্তীতে প্রোডাকশন স্টেজ যুক্ত করুন যদি প্রয়োজন হয়।
- Tasks যোগ করুন:
- প্রতিটি স্টেজে আপনি নির্দিষ্ট টাস্কস অ্যাড করতে পারেন (যেমন, IIS সার্ভারে ডিপ্লয়মেন্ট, Docker ইমেজ তৈরি, SQL স্ক্রিপ্ট রান করা, বা ভার্চুয়াল মেশিনে কোড ডিপ্লয় করা)।
- Approval Gates সেট করুন (যদি প্রয়োজন হয়):
- যদি আপনি চান যে কিছু স্টেজ প্রোডাকশনে যাওয়ার আগে অ্যাপ্রুভাল প্রয়োজন, তবে Manual Approval সেট করতে পারেন।
- Save and Deploy: Release Pipeline সেভ করুন এবং একটি নতুন রিলিজ ডিপ্লয় করুন।
Build এবং Release Pipeline-এর মধ্যে পার্থক্য
- Build Pipeline:
- সোর্স কোড কম্পাইল করে।
- টেস্ট রান করে।
- বিল্ড ফাইল প্রস্তুত করে ডিপ্লয়মেন্টের জন্য।
- Release Pipeline:
- বিল্ড করা কোডের প্যাকেজকে ডেপ্লয়মেন্ট এনভায়রনমেন্টে প্রেরণ করে।
- বিভিন্ন স্টেজে কোড টেস্ট এবং ডিপ্লয়মেন্ট প্রক্রিয়া পরিচালনা করে।
Azure DevOps-এ CI/CD Pipeline এর সুবিধা
- Automation: কোড কম্পাইল থেকে ডেপ্লয়মেন্ট পর্যন্ত সব কিছু স্বয়ংক্রিয়ভাবে করা যায়।
- Error Reduction: ম্যানুয়াল পদ্ধতিতে ভুল হওয়ার সম্ভাবনা কমে।
- Consistency: একই কোড একই পরিবেশে ডেপ্লয় করা হয়, যা পরিবেশের মধ্যে পার্থক্য কমায়।
- Time Efficiency: কোড টেস্ট এবং ডিপ্লয়মেন্ট স্বয়ংক্রিয় হওয়ায় সময় বাঁচে এবং দ্রুত রিলিজ করা যায়।
Azure DevOps-এ Build এবং Release Pipeline তৈরি করার মাধ্যমে আপনি আপনার সফটওয়্যার ডেভেলপমেন্ট লাইফ সাইকেল অটোমেট করতে পারেন, যা পরবর্তী সময়ে কোডের গুণগত মান এবং দ্রুত রিলিজ প্রক্রিয়া নিশ্চিত করবে।