কিভাবে উত্পাদন উত্পাদন ফাইল স্থানান্তর?


9

আমরা একটি গোষ্ঠী যা একটি বিদ্যমান কোডবেস দিয়ে মোটামুটি বড় ওয়েবসাইটে কাজ শুরু করি। আমাদের একটি পরীক্ষা এবং একটি প্রোডাকশন সার্ভার রয়েছে।

আমাদের ধারণাটি অনেকগুলি ডিভের সাথে ধাক্কা দিয়ে অ্যাক্সেস সহ একটি পরীক্ষার সংগ্রহস্থল রয়েছে; এবং একটি আশীর্বাদী সংগ্রহস্থল যা কেবলমাত্র কয়েক জনই ধাক্কা দিতে পারে। আশীর্বাদী রেপো সর্বদা স্থিতিশীল এবং সর্বশেষতম উত্পাদন সংস্করণ উপস্থাপন করে বলে মনে করা হচ্ছে।

আমি কীভাবে ফাইলগুলিকে উত্পাদনে স্থানান্তর করার প্রক্রিয়াটি স্বয়ংক্রিয় করতে পারি? সংস্করণ নিয়ন্ত্রণে উত্পাদন ফাইলগুলি রাখা কি খারাপ? এইভাবে, আশীর্বাদী সংগ্রহস্থলের দিকে ঠেলাঠেলি মানে মোতায়েন। তবে, যখন মার্জ কোন্দল হয় তখন কী ঘটে? সমাধান হওয়া অবধি প্রোডাকশন সার্ভারটি কি ভেঙে যাবে?

উত্তর:


7

এটিকে সহজ ভাষায় বলতে:
নিজের মধ্যে পুশ প্রক্রিয়া সম্পূর্ণ স্বয়ংক্রিয়ভাবে হওয়া উচিত। আপনার কাছে কিছু কাস্টম স্ক্রিপ্ট রয়েছে বা আপনি কেবল "আশীর্বাদী" রেপো থেকে উত্পাদন পরিবেশের দিকে টানুন। এটা তোমার উপর নির্ভর করে. আপনার সবেমাত্র কিছু স্বয়ংক্রিয় হওয়া উচিত, কারণ স্বয়ংক্রিয় প্রক্রিয়াগুলি নির্ভরযোগ্য করে তোলা যায় (হাতে ফাইলগুলি আপলোড করার বিপরীতে)।

তবে পুশ প্রক্রিয়াটি ম্যানুয়ালি ট্রিগার করা উচিত। আপনি আপনার আপডেটগুলিকে চাপ দিন এবং একবার আপনি আত্মবিশ্বাস অনুভব করার পরে, আপনি এটি মুক্তির প্রার্থী হিসাবে ট্যাগ করেন এবং এটি আপনার পরীক্ষার পরিবেশে টানুন (এটি আদর্শভাবে আপনার উত্পাদন পরিবেশের সাথে সমান হতে পারে)। একবার আরসি পরীক্ষা করা হলে, পুশটি শুরু করা যেতে পারে।
আজ অবধি, মানব পরীক্ষকরা যা কিছু দিতে পারে তা আপনাকে আর কিছুই দিতে পারে না।

প্রতিক্রিয়া লুপটি তুলনামূলকভাবে বড় এই অর্থে এটি কিছুটা ধীর গতির শোনাচ্ছে। তবে সঠিক পরীক্ষার জন্য, একটি স্থির স্ন্যাপশট নেওয়া গুরুত্বপূর্ণ, যা পরে 24-48 ঘন্টা (বা সম্ভবত আরও বেশি, প্রকল্পের আকারের উপর নির্ভর করে) জন্য পরীক্ষা করা হয়। বিপরীত চিত্রটি, যেখানে আপনি চাপ দেওয়ার পরে অনেকগুলি বাগ খুঁজে পান এবং আপনি নতুন বাগগুলি প্রবর্তনকারী কিছু দ্রুত সংশোধন করে এটি প্যাচ করার চেষ্টা করেন।
অজানা ত্রুটিযুক্ত (অজানা তীব্রতার) তুলনায় আপনি জ্ঞাত বাগ (গ্রহণযোগ্য তীব্রতার) সাথে আরও ভাল একটি রিলিজ করুন।


তাহলে প্রোডাকশন সার্ভারে রেপো রাখা ঠিক আছে? আমি যখন অটোমেশনটি বললাম, তখন আমি বোঝাতে চাইছিলাম যে প্রডাকশন সার্ভারে কোনও রেপো না থাকলে (অন্য কথায়, সেখানে পরীক্ষামূলক এবং আশীর্বাদী রেপো থাকবে, তবে উত্পাদন নয় )। অবশ্যই, মানবিক পরীক্ষা স্বয়ংক্রিয় করা যায় না, এটি আমি পরে যা করছি না।
ট্যামস সেজেলি

1
@ ট্যামস: আপনার সার্ভারে আশীর্বাদী রেপোগুলির স্থানীয় চেকআউট করা ভাল হতে পারে, যদি আপনি যা বোঝাতে চান (এপাচি (বা অন্য কোনও শালীন ওয়েবসার্ভার) গিট সম্পর্কিত ফাইলগুলি বাইরে থেকে অ্যাক্সেসযোগ্য করে তোলে)) তবে আপনি সহজেই এটির একটি "রফতানি" করতে পারেন। আপনার ওয়েবরুটে ফাইল থাকার কোনও মানে নেই, এটি সেখানে নেই।
back2dos

ত্রুটি -... সুতরাং আপনি কীভাবে জানবেন যে অজানা তীব্রতার অজানা বাগগুলি ... অজানা থাকলে ?
স্পোইক

@ স্পাইক আমার মনে হয় ব্যাক 2 ডস কেবল অনির্ধারিত "দ্রুত নোংরা" সমাধানগুলি নেই এমন স্থির প্রকাশগুলি ব্যবহার করে পুরোপুরি পরীক্ষার পক্ষে পরামর্শ দিচ্ছেন।
সর্বোচ্চ

@ এসপাইক: ২৪-৪৮ ঘন্টা আপনি অজানা বাগগুলি প্রচুর বাগগুলিতে পরিণত করতে পারেন। এছাড়াও 5 মিনিটের মধ্যে, আপনি একটি পরিচিত বাগটিকে প্রচুর অজানা বাগগুলিতে পরিণত করতে পারেন। এটিকে কুইক ফিক্স বলা হয়।
back2dos

2

ক্যাপিস্ট্রানো কীভাবে কাজ করে তা দেখে আমি মোতায়েন সম্পর্কে অনেক কিছু শিখেছি। আমি তখন আরআর এর সাথে কাজ করছিলাম, সুতরাং এটি একটি যৌক্তিক পছন্দ ছিল এবং যদিও আমি যে প্রকল্পে কাজ করছি তার জন্য আচরণ করা আমার পক্ষে তেমনভাবে কখনও পাইনি, এটি স্বয়ংক্রিয় আপডেটগুলি করার পদ্ধতিটি খুব কার্যকর ছিল।

আপনি এমন পরিস্থিতিতে পড়তে পারেন যেখানে আপনি এটি সরাসরি ব্যবহার করতে পারেন - এটি অবশ্যই জেলগুলির সাথে আবদ্ধ নয় - তবে যদি তা না হয় তবে এটির আচরণটি অবশ্যই সহায়ক।


1

আপনি কোন প্লাটফর্মটি ব্যবহার করছেন তার উপর নির্ভর করে, প্রচুর সরঞ্জাম রয়েছে যা আপনার পক্ষে উত্পাদন রিলিজ স্বয়ংক্রিয় করতে ব্যবহার করতে পারে। আমি একটি নেট দোকানে কাজ করি তাই আমরা ন্যান্ট ব্যবহার করছিলাম (যদিও আজকাল এমএসবাইল্ড আরও ভাল বিকল্প)। জাভাতে পিঁপড়া এবং সম্ভবত অন্যান্য জিনিস রয়েছে। রুবির রেকের মতো জিনিস রয়েছে। তারপরে টিমসিটি এবং হাডসনের মতো অবিচ্ছিন্ন ইন্টিগ্রেশন প্ল্যাটফর্ম রয়েছে যা রিলিজ পরিচালনার জন্যও ব্যবহার করা যেতে পারে।

আমি প্রোড কোডটি সরাসরি কোনও পৃথক উত্স নিয়ন্ত্রণ রেপোতে দেখিনি বা শুনিনি তবে এটি অবশ্যই কার্যকর হতে পারে। ব্যাক 2 ডস যেমন বলেছে, কীটি স্বয়ংক্রিয় করা। উত্স নিয়ন্ত্রণ থেকে চেক আউট, বিল্ড এবং পরীক্ষার জন্য পরিবেশ মঞ্চে ঠেকানোর জন্য আমাদের বিল্ড স্ক্রিপ্টগুলি তৈরি করা হয়েছে। তারপরে, যখন আমরা পছন্দ করি স্টেজিং কীভাবে কাজ করছে তখন স্ক্রিপ্টগুলি QA থেকে Prod এ অনুলিপি করে।

আমার প্রস্তাবটি হ'ল সেখানকার সরঞ্জামগুলি দেখুন এবং একটি বাছাই করুন এবং তারপরে একটি প্রক্রিয়া ডিজাইন করুন যা নির্বাচিত সরঞ্জামটির সাথে ভালভাবে কাজ করবে। চাকাটিকে অত্যধিক পুনর্নবীকরণের চেষ্টা করবেন না - এটি খুব সমাধানযোগ্য সমস্যা।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.