के साथ विंडोज सेवाओं को तैनात करने के लिए MsDeploy का उपयोग करना क्या कोई भी preSync runCommand के साथ विंडोज सेवाओं को तैनात करने के लिए सफलतापूर्वक MsDeploy का उपयोग कर रहा है? मुझे यह एक प्रशासक खाते का उपयोग कर काम कर रहा है, लेकिन मेरे जीवन के लिए यह एक मानक उपयोगकर्ता खाते पर काम नहीं कर सकता है। दुर्भाग्य से मैं एकीकृत प्रमाणीकरण का उपयोग नहीं कर सकता (हम बाहरी बॉक्स में तैनात हैं), और हमारे बिल्डर सर्वर पर लॉग में सादे टेक्स्ट में बैठे हमारे प्रशासक पासवर्ड का विचार मुझे बिल्कुल आरामदायक महसूस नहीं करता है। उस मामले के लिए, न तो कोई उपयोगकर्ता प्रमाण-पत्र करता है - लेकिन मैं इसके चारों ओर एक रास्ता नहीं देख सकता।preSync कमांड
"tools/deploy/msdeploy.exe" -verb:sync
-preSync:runCommand="tools\Deploy\PreSyncCommand.cmd",waitInterval=30000
-source:dirPath="C:\BuiltSourcePath"
-dest:computerName=https://server:8172/msdeploy.axd?site=dummysitename,userName=service-deploy,password=service-deploy-pass,authType=basic,dirPath="C:\DeployPath\"
-allowUntrusted
IIS में contentPath साथ, सेवा को तैनात खिड़कियों खाते के लिए प्रमाणीकरण की अनुमति के लिए डमी साइट के लिए सेट अप नियमों और runCommand अनुमति के साथ (के लिए:
आदेश मैं उपयोग कर रहा हूँ यह है पल सी पर सेट किया गया है: \ क्योंकि यह पूरी तरह से स्पष्ट नहीं है कि क्या इसे अस्थायी पथ पर सेट किया जाना चाहिए जो एमएसडीईपी स्ट्रीम करता है, या तैनाती पथ?)। सेवा-तैनाती खाते में लक्ष्य निर्देशिका का पूर्ण नियंत्रण भी है। मुझे निम्नलिखित वापस मिलते हैं:
Performing '-preSync'...
Info: Using ID '7a7d34a1-b5d8-49f1-960a-31c9cf825868' for connections to the remote server.
Info: Using ID '4d0b910c-aca4-4640-84bd-3597d22d99d1' for connections to the remote server.
Info: Updating runCommand (C:\TeamCity\buildAgent\work\aec989676b349656\tools\De
ploy\PreSyncCommand.cmd).
Warning: Access is denied.
Warning: The process 'C:\Windows\system32\cmd.exe' (command line '/c "C:\Windows
\ServiceProfiles\LocalService\AppData\Local\Temp\giz2t0kb.0ay.cmd"') exited with
code '0x1'.
ऐसा होता है भले ही PreSyncCommand.cmd की सामग्री खाली हो। यदि मैं प्रशासक प्रमाण-पत्र में पास करता हूं तो वही आदेश ठीक चलाता है। मैंने ProcessMonitor का उपयोग करके यह जांचने की कोशिश की है कि क्या कुछ भी पहुंच से इनकार किया जा रहा है लेकिन कोई भी नहीं देख सकता है - इसलिए मुझे लगता है कि यह अभी भी एक एमएसडीमेंट प्रमाणीकरण नियम है। WmSvc.log में कुछ भी नहीं है (डीबगिंग सक्षम है), न ही इवेंट लॉग में।
कोई विचार? धन्यवाद!
मैं ऐसा करने के तरीके पर एक ब्लॉग प्रविष्टि पोस्ट किया है: http://www.jamescrowley.co.uk/2011/04/28/deploying-windows- सेवाओं-उपयोग-एमएसडीओपी/ –
उपरोक्त जेम्स क्रॉली द्वारा पोस्ट की गई ब्लॉग एंट्री ने इसे अभी यहां ले जाया है [http://www.jamescrowley.co.uk/2011/09/05/deploying-windows-services-using- msdeploy /) –