में प्रत्येक बिल्ड पर नोडजेस एनपीएम चरण डाउनलोड पैकेज, जब मैं नोडजेएस एनपीएम की बात करता हूं तो मैं एक एन 00 बी का थोड़ा सा हिस्सा लेता हूं, लेकिन कई लेखों पर अनुशंसित चरणों का उपयोग करके इसे हमारे निर्माण वातावरण में कार्यान्वित करने के बाद से हमारे निर्माण के समय में तीन गुना वृद्धि हुई है।टीमसीटी
हम मानक सामान (कम करें/concat/आदि js/सीएसएस/आदि)
हम TeamCity का उपयोग करें और फिर एक Node.js NPM चरण कार्यों (आरई को चलाने के लिए एक घूंट कदम जोड़ लिया है के लिए इसका इस्तेमाल करते हैं: https://github.com/jonnyzzz/TeamCity.Node)
एनपीएम सेट करने का कार्य सबसे अधिक समय लगता है, 2min 10 सेकेंड, जो "बिल्डिंग एनपीएम इंस्टॉल" नामक कुल बिल्ड समय का 65% से अधिक है, जो प्रत्येक बिल्ड पर सभी संकुल को दोबारा डाउनलोड करने लगता है
चरण 3/7: NPM सेटअप (Node.js NPM) (2m: 10s)
012,[NPM स्थापित] शुरू: cmd/सी NPM स्थापित
आउट कुल निर्माण के समय से पहले 1min 30sec के आसपास थे, इकाई परीक्षण भी शामिल है।
क्या इन स्थानीय रूप से कैश करने और प्रत्येक निर्माण पर पुनः डाउनलोड करने के लिए वैसे भी है? उपयोगकर्ता प्रोफ़ाइल में या बिल्ड फ़ोल्डर के विपरीत शायद कुछ हो सकता है?
अधिक विस्तार ..
यह शायद सबसे अच्छा सेटअप http://www.dotnetcurry.com/visualstudio/1096/using-grunt-gulp-bower-visual-studio-2013-2015
हम C# परियोजनाओं है कि नए कार्य धावक एक्सप्लोरर का उपयोग कर रहे हैं बताते हैं, निर्भरता इस से एक package.json में सहेजे जाते हैं, आप आपके स्थानीय वातावरण पर एक बार वर्कस्पेस (एक .tfignore का उपयोग करने के लिए इसे स्रोत में जांचने से रोकने के लिए) की आवश्यकता है, फिर भी, जब तक कि आप एक नया स्थानीय कार्यक्षेत्र शुरू नहीं करते हैं, तब तक पूर्व-रन "npm इंस्टॉल करें"।
जब बिल्ड रन चलाता है तो उसे कमांड लाइन से "npm इंस्टॉल" चलाने की आवश्यकता होती है और यह package.json फ़ाइल से निर्भरता उठाता है और उन्हें हर बार बिल्ड की कार्यशील निर्देशिका के अंदर एक उप फ़ोल्डर में स्थापित करता है, भले ही फाइलें पहले से ही पिछले निर्माण से हैं (यानी टीसी एजेंट ने उन्हें साफ़ नहीं किया है), फिर भी आप उन्हें काम करने वाले फ़ोल्डर के बाहर स्थापित नहीं कर सकते हैं।
मैं गलत हो सकता था ... या मुझे कहना चाहिए कि मुझे उम्मीद है कि मैं गलत हूं, और इसका समर्थन करने के लिए गल्प के लिए एक रास्ता तलाश रहा हूं, लेकिन जिस तरह से हम इसे काम करते हैं, उसे कार्य धावक एक्सप्लोरर के साथ काम करने की आवश्यकता होगी ताकि देव के लिए F5 अनुभव अभी भी उनके स्थानीय पर समान है।
हमारे पास कई एजेंट हैं हां।
क्या आपने कभी इस मुद्दे के लिए स्वीकार्य समाधान किया है? – tofutim