কানেকশনটি আপনার কী উপকারে আসে
Bitbucket কানেক্ট করলে আপনার একটি Bitbucket Cloud রিপোজিটরি থেকে কোনো সাইট ডিপলয় করা যায়: ব্রাঞ্চে পুশ করলেই সাইট আপডেট হয়ে যায়।
শুরু করার আগে
যে রিপোজিটরিগুলো আপনি ডিপলয় করতে চান সেগুলোতে অ্যাক্সেসসহ একটি Bitbucket Cloud অ্যাকাউন্ট।
১. Bitbucket-এ কি তৈরি করুন
Bitbucket দুই ধরনের ক্রেডেনশিয়াল অফার করে, যার যেকোনোটি কাজ করে:
- কোনো রিপোজিটরি, প্রজেক্ট বা ওয়ার্কস্পেসের জন্য অ্যাক্সেস টোকেন, যা সংশ্লিষ্ট রিপোজিটরি, প্রজেক্ট বা ওয়ার্কস্পেসের নিজস্ব সেটিংসের Access tokens থেকে তৈরি করা হয়। এটি কোনো ব্যক্তির পরিবর্তে ওই রিপোজিটরি, প্রজেক্ট বা ওয়ার্কস্পেসের সাথে যুক্ত থাকে। রিপোজিটরিগুলোর জন্য এটিকে রিড অ্যাক্সেস দিন।
- আপনার Atlassian অ্যাকাউন্টে একটি API টোকেন। আপনার প্রোফাইল সিলেক্ট করুন, এরপর Account settings → Security → Create and manage API tokens → Create API token with scopes-এ যান। এটির একটি নাম দিন, একটি মেয়াদ শেষ হওয়ার সময় সেট করুন, অ্যাপ হিসেবে Bitbucket বেছে নিন এবং রিপোজিটরিগুলোর জন্য রিড অ্যাক্সেস সিলেক্ট করুন। Bitbucket টোকেনটি কেবল একবারই দেখায়; তখন এটি কপি করে নিন।
২. এখানে কানেক্ট করুন
আপনার ড্যাশবোর্ডে Integrations খুলুন এবং Connect an account বেছে নিন। গ্রুপ হিসেবে Code hosting এবং অ্যাকাউন্ট হিসেবে Bitbucket বেছে নিন, API token পূরণ করুন — এবং আপনি যদি অ্যাক্সেস টোকেনের পরিবর্তে আপনার Atlassian অ্যাকাউন্টে কোনো টোকেন তৈরি করে থাকেন, তবে Account username ও পূরণ করুন, এবং Connect account চাপুন।
কোনো কিছু সেভ করার আগে আমরা আপনার পেস্ট করা জিনিসটি পরীক্ষা করি। কাজ করে না এমন কোনো কি কখনোই সংরক্ষণ করা হয় না, এবং উত্তরটিতে জানানো হয় যে এতে কী ত্রুটি ছিল। কাজ করে এমন একটি কি আমাদের সিক্রেট ভল্টে এনক্রিপ্ট করে রাখা হয় — আমাদের ডাটাবেজে কখনোই নয় — এবং এটি আর কখনোই দেখানো হয় না, এমনকি আপনাকেও নয়।
ইউজারনেমটি নির্ধারণ করে যে আমরা কীভাবে টোকেনটি পাঠাই, তাই কেবল অ্যাকাউন্ট টোকেনের ক্ষেত্রেই এটি লিখুন। ইউজারনেমসহ কোনো অ্যাক্সেস টোকেন, বা ইউজারনেম ছাড়া কোনো অ্যাকাউন্ট টোকেন প্রত্যাখ্যান করা হয়।
এরপর কী ঘটে
- এই অ্যাকাউন্টের একটি রিপোজিটরি থেকে সরাসরি একটি সাইট ডিপলয় করা যেতে পারে: সাইটের রিপোজিটরি কানেকশনে এটি বেছে নিন, রিপোজিটরি এবং ব্রাঞ্চ সিলেক্ট করুন, এবং একটি পুশ ডিপলয় সম্পন্ন করে।
- অন্য প্রতিটি ব্রাঞ্চ নিজস্ব প্রিভিউ পেতে পারে, যাতে লাইভ সাইটে পৌঁছানোর আগে আপনি কোনো পরিবর্তন যাচাই করে নিতে পারেন।
- Render এবং Azure Static Web Apps-এর মতো Git-নির্মিত স্ট্যাটিক হোস্টগুলো সাইটের কোডের উৎস হিসেবে এই কানেকশনটি ব্যবহার করে।
যদি এটি কানেক্ট না হয়
একটি রিপোজিটরি অনুপস্থিত রয়েছে। একটি অ্যাক্সেস টোকেন কেবল সেই রিপোজিটরি, প্রজেক্ট বা ওয়ার্কস্পেসেই পৌঁছায় যেখানে এটি তৈরি করা হয়েছিল। আপনার প্রয়োজনীয় প্রতিটি রিপোজিটরি কভার করে এমন লেভেলে একটি তৈরি করুন।
এটি কাজ করেছিল এবং তারপর বন্ধ হয়ে গেছে। দুর্ঘরণের টোকেনেরই মেয়াদ শেষ হতে পারে। একটি নতুন তৈরি করুন এবং এটি কানেক্ট করুন।
এটি বলে যে কি-টি প্রত্যাখ্যান করা হয়েছে। প্রায় সবসময়ই এই তিনটি বিষয়ের একটি ঘটে: এর সাথে কোনো স্পেস বা লাইন ব্রেক কপি হয়ে যাওয়া, মেয়াদোত্তীর্ণ কোনো কি, অথবা আপনি কপি করার পর যে কি-টি বাতিল বা পুনরুৎপাদন করা হয়েছে। একটি নতুন তৈরি করুন এবং এটি আবার পেস্ট করুন।
এটি কানেক্ট হয়, কিন্তু পরবর্তীতে কোনো কিছু ব্যর্থ হয়। কি-টি প্রমাণীকরণ করে কিন্তু কাজের জন্য প্রয়োজনীয় কোনো অনুমতির অভাব রয়েছে। উপরে তালিকাভুক্ত অনুমতিগুলো দিয়ে একটি নতুন কি তৈরি করুন, তারপর পুরনো কানেকশন ডিসকানেক্ট করুন এবং নতুন কি-টি কানেক্ট করুন।
ডিসকানেক্ট করা হচ্ছে
Integrations খুলুন, অ্যাকাউন্টটি খুঁজুন এবং Disconnect চাপুন। এটি সংরক্ষিত কি-টি অবিলম্বে মুছে ফেলে। এটি ব্যবহার করছিল এমন যেকোনো কিছু এর পরবর্তী কার্যকলাপে থেমে যায়, এবং নীরবে ব্যর্থ হওয়ার পরিবর্তে যে স্ক্রিনগুলো এর ওপর নির্ভরশীল ছিল সেগুলো বিষয়টি জানিয়ে দেয়।
ডিসকানেক্ট করা মানে পূর্বে যা করা হয়েছে তা পূর্বাবস্থায় ফেরানো নয় — আপনার অ্যাকাউন্টে আমরা যে রেকর্ড, ডিপলয়মেন্ট বা সেটিংস পরিবর্তন করেছি সেগুলো যেমন ছিল তেমনই থাকে। আপনার যদি মনে হয় কি-টি নিজেই ফাঁস হয়ে থাকতে পারে, তবে ভেন্ডরের কাছে গিয়ে এটি বাতিলও করুন; ডিসকানেক্ট করলে আমাদের কপি মুছে যায়, তাদেরটা নয়।