मैं एक परियोजना में कॉन्फ़िगरेशन फ़ाइलों के समूह को बदलने के लिए XML के लिए SlowCheetah का उपयोग कर रहा हूं।एकाधिक बिल्ड कॉन्फ़िगरेशन एक कॉन्फ़िगरेशन रूपांतरण साझा कर सकते हैं?
हालांकि, यह वही समाधान लोड संतुलित सेटअप का हिस्सा है, जहां कुछ कॉन्फ़िगरेशन मान विभिन्न सर्वरों (दो, इस मामले में) के बीच भिन्न होते हैं।
मैं निम्नलिखित है कॉन्फ़िगरेशन
- डीबग
- रिलीज
- Release.Test
- Release.Prod1
- Release.Prod2
लगभग रिलीज में सब कुछ का निर्माण। प्रोड 1 और रिलीज। प्रोड 2 समान है, कुछ मूल्यों को छोड़कर मैं कॉन्फ़िगरेशन फ़ाइलों में से एक। क्या कोई तरीका है कि मेरे पास दो समान फ़ाइलों (Something.Release.Prod1.Config
और Something.Release.Prod2.Config
) की बजाय इन दोनों बिल्ड कॉन्फ़िगरेशन पर उपयोग किए जाने के लिए Something.Release.Prod.Config
जैसी फ़ाइल हो सकती है?
... और विस्तृत करने के लिए: इस मामले में मैं दो वातावरण पर तैनात कर रहा हूं, इसलिए एक डुप्लिकेट फ़ाइल वास्तव में एक बड़ा संकट नहीं है। क्या होगा यदि आपके पास दस या सौ सर्वर हैं? मुझे कोई कारण नहीं दिखता कि एक सीआई-सर्वर (विशेष रूप से इस मामले में टीमसिटी) के साथ एक सेटअप ऐसा करने में सक्षम नहीं होना चाहिए, भले ही मुझे लगता है कि इस तरह के वातावरण में अधिक अनुकूलित सेटअप सामान्य हैं।
यह आमतौर पर कैसे संभाला जाता है?
मुझे लगता है कि वास्तविक परिवर्तन होने से पहले एक बिल्ड चरण के रूप में मैं फ़ाइलों की कुछ जादू प्रतिलिपि कर सकता हूं, लेकिन यह एक गन्दा और अत्यधिक जटिल समाधान जैसा लगता है।
कुछ जिसे हम यहां भी समझने की कोशिश कर रहे हैं ... टी 4 टेम्पलेट्स को म्यूट किया जा रहा है लेकिन मुझे विशेष रूप से उन्हें पसंद नहीं है। मैं कॉन्फ़िगरेशन रूपांतरण पसंद करता हूं लेकिन इसे डीबग और रिलीज़ संस्करणों से परे विस्तारित करना चाहता हूं .. जैसे कि आप –
को समझने की कोशिश कर रहे हैं, डीबग और रिलीज से परे विस्तार करना आसान है, यह बिल्ड => बिल्ड कॉन्फ़िगरेशन मेनू से अधिक बिल्ड कॉन्फ़िगरेशन जोड़ने के बारे में है । उनमें से कुछ को एक फ़ाइल साझा करना, हालांकि ... –