ম্যাজেন্টো 2-র একটি ক্লায়েন্ট প্রকল্পে কাজ করার সময় - আমি তৃতীয় পক্ষের এক্সটেনশানগুলি লোড করার এবং ট্র্যাক রাখার অসংখ্য পদ্ধতি আবিষ্কার করেছি।
এই অনুমান করে যে আমরা ইন্টিগ্রেটার ইনস্টলেশন পদ্ধতিটি ব্যবহার করছি (সুরকার!), তৃতীয় পক্ষের এক্সটেনশানগুলি পরিচালনা করার জন্য সেরা অনুশীলনগুলি কী কী?
এখনও অবধি, আমি যে প্রতিটি এক্সটেনশন কিনেছি বা ডাউনলোড করেছি তার নিজস্ব রচয়িতা জেসন ফাইল রয়েছে - এবং আমি কমপক্ষে তিনটি ভিন্ন উপায় সম্পর্কে জানি যে এক্সটেনশন লেখকরা তাদের এক্সটেনশনটি ইনস্টল করার জন্য সুপারিশ করবেন:
- এই ফাইলগুলিকে অ্যাপ / কোডে অনুলিপি করুন
- এই জিপটি ফোল্ডারে অনুলিপি করুন, এটি একটি শৈল্পিক সংগ্রহস্থল হিসাবে যুক্ত করুন এবং এটির প্রয়োজন
- এই অনলাইন সংগ্রহশালাটি (লেখার সাথে / ছাড়াই) যুক্ত করুন এবং এটির প্রয়োজন
এখনও অবধি, আমি ১ ও ২ পেরিয়ে এসেছি এবং সন্দেহজনক ধরণের # 3 উপস্থিত রয়েছে। তবে তারপরে লক্ষ্য করে যেগুলি # 1 টি প্রস্তাব করেছিল আমি দেখতে পেয়েছি যে আপনার কাছে একটি "পাথ" ভান্ডার থাকতে পারে - আমার এক্সটেনশানগুলি অ্যাপ / কোড থেকে একই ফোল্ডারে স্থানান্তরিত করে আমি এই নিদর্শনগুলি রাখার সিদ্ধান্ত নিয়েছি এবং এটি সেভাবেই প্রয়োজনীয় করে তুলেছে।
এই প্রক্রিয়াতে, আমার সংগ্রহস্থলগুলির কনফিগারেশনটি দেখতে এমন কিছু দেখাচ্ছে:
"repositories": {
"0": {
"type": "composer",
"url": "https://repo.magento.com/"
},
"artifacts": {
"type": "artifact",
"url": "artifacts"
},
"third-party": {
"type": "path",
"url": "artifacts/*/*"
},
},
সুতরাং আপনার কাছে আমার প্রশ্নটি - এখানে সেরা অনুশীলনটি কী? আপনি তৃতীয় পক্ষের এক্সটেনশনগুলি কীভাবে পরিচালনা করবেন?
এখন পর্যন্ত আমি বিশ্বাস করি যেভাবে আমি এটি করছি এটি সবচেয়ে ভাল উপায় - কেবলমাত্র যদি তাদের রচয়িতা জেসন পড়েন এবং কোনও নির্ভরতার দ্বন্দ্ব (বা পিএইচপি সংস্করণে সীমাবদ্ধতা) স্পষ্ট হয়ে উঠবে - তবে আমি মনে করি না এটি যথেষ্ট পরিমাণে চূড়ান্ত।