দীর্ঘ এবং কঠোর মাস পরে বিভিন্ন জিনিস চেষ্টা করার এবং প্রতিবার কামড়ানোর সময় আমি বুঝতে পেরেছি,
হিরোকু একটি গিট সংগ্রহস্থলটিকে একটি মোতায়েনের ব্যবস্থা হিসাবে ব্যবহার করার কারণে, আপনি এটিকে গিট সংগ্রহস্থল হিসাবে ব্যবহার করবেন না
এটি ঠিক একইভাবে আরএসএনসিও হতে পারে, তারা গিটের জন্য গিয়েছিল, এর কারণে বিভ্রান্ত হবেন না
যদি আপনি এটি করেন তবে আপনি নিজেকে সমস্ত ধরণের আঘাতের জন্য উন্মুক্ত করেন। উপরে উল্লিখিত সমস্ত সমাধান কোথাও কোথাও খারাপভাবে ব্যর্থ:
- এটির জন্য প্রতিবার, বা পর্যায়ক্রমে কিছু করা দরকার বা অপ্রত্যাশিত কিছু ঘটে (সাবমডিউলগুলি পুশ করা, সাবট্রিজগুলি সিঙ্ক করা, ...)
- যদি আপনি উদাহরণস্বরূপ কোনও কোড ইঞ্জিন ব্যবহার করে আপনার কোডটি আধুনিকীকরণ করেন, বান্ডিলার আপনাকে জীবিত খাবেন, এর ভাল সমাধানের সন্ধানের জন্য এই প্রকল্পের সাথে আমি যে পরিমাণ হতাশার মুখোমুখি হয়েছিল তা বর্ণনা করা অসম্ভব impossible
- আপনি ইঞ্জিনটি গিট রেপো লিঙ্ক হিসাবে যুক্ত করার চেষ্টা করছেন +
bundle deploy
- ব্যর্থ, আপনার প্রতিবার আপডেট বান্ডিল করা দরকার
- আপনি ইঞ্জিনটিকে
:path
+ হিসাবে যুক্ত করার চেষ্টা করেন bundle deploy
- ব্যর্থ হন, দেব দলটি :path
বিকল্পটিকে "আপনি এই রত্ন বিকল্পের সাহায্যে বান্ডিলার ব্যবহার করছেন না" হিসাবে বিবেচনা করে তাই এটি উত্পাদনের জন্য বান্ডিল করবে না
- এছাড়াও, ইঞ্জিনের প্রতিটি রিফ্রেশ আপনার রেলটিকে স্ট্যাক -_- আপডেট করতে চায়
- আমি যে সমাধান পেয়েছি তা হ'ল ইঞ্জিনটিকে
/vendor
বিকাশে একটি সিমিলিংক হিসাবে ব্যবহার করা , এবং প্রকৃতপক্ষে উত্পাদনের জন্য ফাইলগুলি অনুলিপি করা
সমাধান
অ্যাপ্লিকেশনটিতে প্রশ্নের মধ্যে 4 টি প্রকল্প রয়েছে:
- এপিআই - প্রোফাইলের উপর নির্ভর করে 2 টি ভিন্ন হিরকু হোস্টে চলবে - আপলোড এবং এপিআই
- ওয়েব - ওয়েবসাইট
- ওয়েব-পুরানো - পুরানো ওয়েবসাইট, এখনও মাইগ্রেশনে রয়েছে
- সাধারণ - একটি ইঞ্জিনে নিষ্ক্রিয় সাধারণ উপাদান
সমস্ত প্রকল্পের ইঞ্জিনের vendor/common
মূলের দিকে তাকাতে একটি সিমিলিংক রয়েছে common
। হিরকুতে মোতায়েনের জন্য উত্স কোডটি সংকলন করার সময় আমাদের প্রতিটি পৃথক হোস্টের বিক্রেতার ফোল্ডারে শারীরিকভাবে থাকা সিমিলিংকটি আর এসএসএনসি প্রয়োজন।
- আর্গুমেন্ট হিসাবে হোস্টনামের একটি তালিকা গ্রহণ করে
- আপনার ডেভলপমেন্ট রেপোতে একটি গিট পুশ চালায় এবং তারপরে কোনও পৃথক ফোল্ডারে একটি ক্লিন গিট টান চালান, এটি নিশ্চিত করে যে হোস্টগুলিতে কোনও নোংরা (নিঃশব্দ) পরিবর্তনগুলি স্বয়ংক্রিয়ভাবে ঠেলাঠেলি করে না making
- সমান্তরালভাবে হোস্টকে মোতায়েন করে - প্রতিটি হিরকু গিট রেপো টানানো হয়, নতুন কোডটি সঠিক জায়গাগুলিতে সেন্সর করা হয়, গিট কমিট মন্তব্যে বেসিক পুশ তথ্য সহ কমিট করা হয়,
- শেষ পর্যন্ত, আমরা শখের হোস্টকে ঘুম থেকে উঠতে এবং লগগুলিতে লেগ রাখতে বলুন যে সমস্ত ওয়াইন হয়েছে কিনা তা দেখতে কার্লের সাথে একটি পিং পাঠাই
- জেনকিন্সের সাথেও দুর্দান্ত খেলে: ডি (সফল পরীক্ষার পরে সার্ভারগুলি পরীক্ষা করার জন্য স্বয়ংক্রিয় কোড পুশ)
এখন 6 মাসে ন্যূনতম (না?) সমস্যা সহ বুনোতে খুব সুন্দর কাজ করে
এখানে স্ক্রিপ্টটি https://gist.github.com/bbozo/fafa2bbbf8c7b12d923f
আপডেট 1
@ অ্যাডামবুজিনিস্কি, এটি এত সোজা আর কখনও নয়।
1 ম আপনার সর্বদা কমপক্ষে একটি উত্পাদন এবং পরীক্ষার পরিবেশ থাকবে - এবং আরও খারাপ সময়ে ফাংশন নির্দিষ্ট ক্লাস্টারগুলির একগুচ্ছ হঠাৎ 1 ফোল্ডারের একটি হিরকু প্রকল্পগুলিকে একটি মুল বেসিক প্রয়োজনীয়তা হিসাবে মানচিত্রের প্রয়োজন এবং এটি সমস্তরকমভাবে কোনওভাবে সংগঠিত হওয়া দরকার স্ক্রিপ্টটি "জানে" আপনি কোথায় উত্স স্থাপন করতে চান,
2 য় আপনি প্রকল্পগুলির মধ্যে কোড ভাগ করতে চাইবেন - এখন sync_common
অংশটি এসেছে, বিকাশের প্রতীকযুক্ত শেননিগানরা হিরোকুতে প্রকৃত আরএসসিড কোড দ্বারা প্রতিস্থাপন করা হচ্ছে কারণ হিরোকুর একটি নির্দিষ্ট ফোল্ডার কাঠামোর প্রয়োজন এবং বান্ডলার এবং রুবিজেমস সত্যই সত্যই জিনিসগুলিকে খুব খারাপভাবে খারাপ করে তোলে যদি আপনি একটি রত্ন মধ্যে সাধারণ থ্রেড নিষ্কাশন করতে চান
তৃতীয়টি আপনি সিআই-তে প্লাগ করতে চাইবেন এবং এটি সাবফোল্ডার এবং গিট রেপোকে কীভাবে সংগঠিত করা দরকার তা কিছুটা বদলে যাবে, সর্বোপরি সহজ ব্যবহারের ক্ষেত্রে আপনি উপরে বর্ণিত সংক্ষেপে শেষ করতে পারেন।
অন্যান্য প্রকল্পগুলিতে আমার জাভা বিল্ডগুলি প্লাগ ইন করতে হবে, একাধিক ক্লায়েন্টের কাছে সফ্টওয়্যার বিক্রি করার সময় আপনাকে প্রয়োজনীয়তা এবং কী নোটের উপর নির্ভর করে ইনস্টল করা মডিউলগুলি ফিল্টার করতে হবে,
আমার সত্যিই একটি রেকফিল বা কিছুতে বান্ডিলিং জিনিসগুলি অন্বেষণ করা উচিত এবং সেভাবে সবকিছু করা উচিত ...