2009-05-03 10 views
6

नोट: मैं सतत एकीकरणसी #/नेट - सतत एकीकरण और FTP तैनाती

को एक newb हूँ क्या "सर्वश्रेष्ठ" दृष्टिकोण इन कार्यों पाने के लिए है:

  1. बिल्ड (विधानसभाओं और वेब ऐप)
  2. परीक्षण (MbUnit या NUnit)
  3. और यदि यह एफ़टीपी के माध्यम से मुख्य सर्वर (इंटरनेट) पर तैनात परीक्षण पास करता है।

और "सर्वश्रेष्ठ" द्वारा मेरा मतलब सबसे सस्ता विकल्प है, और सीखना आसान है (कम सिरदर्द)।

उत्तर

5

मैं एक बहुत विस्तृत ब्लॉग पोस्ट TeamCity का उपयोग कर, और वेब तैनाती परियोजनाओं के निर्माण और तैनाती (स्थानीय) यहां स्वचालित करने के लिए लिखा है:

http://www.diaryofaninja.com/blog/2010/05/09/automated-site-deployments-with-teamcity-deployment-projects-amp-svn

मैं तो इस में शामिल किया है एफ़टीपी अलावा

दिखाने के लिए

http://www.diaryofaninja.com/blog/2010/09/21/continuous-integration-tip-1-ndash-ftp-deployment

मूल रूप से प्रक्रिया इस तरह है:

  • एक teamcity बिल्ड सर्वर मैं अपने SVN रेपो से डाउनलोड का उपयोग करना
  • मैं और बिल्ड सर्वर
  • मैं एक कमांड लाइन एफ़टीपी ग्राहक MSBuild कार्य का उपयोग कर WinSCP बुलाया पटकथा का समर्थन करता है कि आग पर एक स्थानीय फ़ोल्डर के लिए साइट की तैनाती EXEC (http://winscp.net/)
  • सभी अपलोड करें अपनी साइटों की सामग्री
  • पसंद

की डालने पेय है मैं तो यह सुनिश्चित करें कि मैं केवल ट्रंक को तैनात कर मेरे एसवीएन रेपो के, और विलय से पहले एक शाखा में सबकुछ विकसित और परीक्षण करें - इस तरह केवल परीक्षण की गई सामग्री तैनात की जाती है। अपने निर्माण चक्र में स्वचालित परीक्षण जोड़ें और आपको स्वर्ग में एक मैच मिला है।

+1

आप जानते हैं, यह वह दृष्टिकोण है जिसे मैं कई बड़े पैमाने पर ग्राहकों के साथ ले रहा हूं और उसने मुझे अच्छी तरह से सेवा दी है। टीम फाउंडेशन सर्वर बहुत अच्छा है यदि आप सभी एमएस पर्यावरण में हैं, लेकिन "मिश्रित" कंपनी के साथ काम करते हैं जहां एससीएम पहले से मौजूद हो सकता है (मेरे मामले में एसवीएन), यह बहुत अच्छा काम करता है। मुझे लगता है कि एकमात्र अजीब लग रहा है, यकीन है कि एमएस के पास एक इंस्टॉल होगा जो यह सब करेगा? –

+0

आप MSDEPLOY का उपयोग कर सकते हैं, हालांकि मुझे लगता है कि यह आपको नियंत्रण का स्तर नहीं देता है कि उपरोक्त दृष्टिकोण आपके निर्माण में चीजों को स्क्रिप्ट करने में सक्षम होने के साथ देता है (कस्टम app_offline.htm आदि की प्रतिलिपि बनाएँ) – Doug

+0

आप कोण कोण को चारों ओर रखना भूल गए पसंद के पेय डालें: <पसंद का पेय डालना चाहिए>: डी गंभीरता से हालांकि ... भयानक जवाब! – longda

2

मैं यूनिट परीक्षणों के लिए एमएसबिल्ड और एमबुनिट के साथ जाऊंगा। एफटीपी भाग के लिए एफ़टीपी के साथ msbuild कस्टम कार्यों के लिए Google और आपको गैस पर खाना बनाना चाहिए।

+0

तो बस एमएसबिल्ड का उपयोग स्वयं ही करें? सीआई सर्वर की कोई ज़रूरत नहीं है? – BuddyJoe

+0

आप एमएसबिल्ड सीखने से बेहतर हैं, बिल्ड स्क्रिप्ट सभी एक्सएमएल आधारित हैं इसलिए आपको उनसे परिचित होना चाहिए। एक बार आपके पास एक निर्माण स्क्रिप्ट हो जाने के बाद आप क्रूज नियंत्रण को जोड़ सकते हैं। यही वह तरीका है जिसे मैं उड़ाना चाहता हूं। – Burt

1

मैंने ऐतिहासिक रूप से CruiseControl का उपयोग किया है, जिसने ठीक काम किया है, लेकिन मैंने TeamCity के बारे में अच्छी बातें भी सुनी हैं। एमएसबिल्ड के लिए एफ़टीपी कार्यों के बारे में (जो निश्चित रूप से आप जाना चाहते हैं), नेट पर कुछ खोजने के लिए कुछ हैं। जब मैंने पिछली बार चेक किया (जो हाल ही में नहीं था) जो मुझे मिला वह एक या एक और कमी थी, इसलिए मैंने खुद को लिखना समाप्त कर दिया (.NET में FtpWebRequest को लपेटना)। हालांकि यह सबसे अच्छा एफ़टीपी कार्यान्वयन नहीं हो सकता है, कार्य ने मुझे आवश्यक कार्यक्षमता प्रदान की है (निर्देशिका संरचनाओं का अपलोड, रिमोट डिलीट)। मुझे लगता है कि आज कार्यक्षमता प्रदान करने वाले कार्यों को उपलब्ध कराया जा सकता है (अन्यथा शायद मुझे मेरा प्रकाशित करना चाहिए ...)

0

हम हेरिकस सॉफ्टवेयर से Zed Builds and Bugs Manager के साथ एक ही काम करते हैं।

हमें सी ++ डीएल के साथ .NET असेंबली को गठबंधन करना है और पूरी चीज को जावा इंस्टॉलेशन में पैकेज करना है (कल्पना करें कि भ्रम :-))। हम निर्माण के कुछ घटकों को अपलोड करने के लिए एफ़टीपी का भी उपयोग करते हैं (पूरी बात नहीं) अन्य प्रणालियों को जिन्हें निर्माण के टुकड़ों की आवश्यकता होती है।

सब कुछ एक साथ लुढ़कने के बाद, जेड सर्वर के बारे में अच्छी बात यह है कि यह हमारी प्रणाली बन जाती है जहां हर कोई जानता है कि उनकी कलाकृतियों को कहां से प्राप्त किया जाए। यह देव से क्यूए तक उत्पादन में पदोन्नति को संभालता है, और इस जीवन चक्र के माध्यम से निर्माण को ट्रैक करता है।

संबंधित मुद्दे