2011-05-04 15 views
8

Herkes bir windows preSync runCommand ile dağıtmak için MsDeploy'u başarıyla kullanıyor mu? Bir Yönetici hesabı kullanarak çalışıyorum, ancak hayatımın standart bir kullanıcı hesabı üzerinde çalışmasını sağlayamadım. Ne yazık ki, tümleşik kimlik doğrulamasını kullanamıyorum (harici bir kutuya konuşlandırıyoruz), ve yönetici şifremizin yapı-içi sunucusundaki günlükler içinde düz metin içinde oturmuş olduğumuz düşüncesi beni tamamen rahat hissettirmiyor. Bu konuyla ilgili herhangi bir kullanıcı bilgisi yoktur, ancak bunun bir yolunu göremiyorum. contentPath ile, hizmet-dağıtmak pencereler hesap için kimlik doğrulaması sağlamak için kukla site için IIS kurulmuş kural ve KomutÇalıştır izinlerine sahipWindows Hizmetleri preSync komutuyla dağıtmak için MsDeploy kullanma

"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 

(için:

kullanıyorum komut şudur an, C: \ 'ye ayarlanmış olup, bunun nedeni MsDeploy'un aktığı geçici yola mı, yoksa dağıtım yoluna mı ayarlanmalı? Hizmet-dağıtımı hesabı da hedef dizinin tam kontrolüne sahiptir.

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'. 

Bu PreSyncCommand.cmd içeriği boş olsa bile olur: Aşağıdaki kolla. Yönetici kimlik bilgilerini geçersem aynı komut çalışır. Herhangi bir şeyin erişimini reddedilip reddedilmediğini kontrol etmek için ProcessMonitor kullanmayı denedim. Bu yüzden hala bir MsDeploy kimlik doğrulama kuralı olduğunu tahmin ediyorum. WmSvc.log (hata ayıklama etkin) veya olay günlüğünde hiçbir şey yok.

Herhangi bir fikrin var mı? Teşekkürler! "Yönetim Hizmeti Heyeti" özelliğini açın

içinde IIS Yöneticisi:

+2

: http://www.jamescrowley.co.uk/2011/04/28/deploying-windows- services-using-msdeploy/ –

+2

James Crowley tarafından yayınlanan blog girişi şu an taşındı [şimdi] (http://www.jamescrowley.co.uk/2011/09/05/deploying-windows-services-using- msdeploy /) –

cevap

13

Eğer WMSvc aracılığıyla Web Dağıt kullandığınız için, hedef sunucuda kurulum uygun heyeti kurallarına gerekir. En az runCommand sağlayıcısını belirten yeni bir kural ekleyin. Çalıştır bölümünde, Specific User'u seçin ve bu makinedeki yerel yönetici hesabı için kimlik bilgileri sağlayın. Bu, runCommand komut dosyalarınızın yürütüleceği kimliktir. Son olarak, dirPath sağlayıcısının hedefi için belirttiğiniz kullanıcının temsilci kuralına eklenmesi gerekir.

Invoke olmayan bir ayrıcalıklı hesap kullanarak bir dağıtım yapmanızı sağlar

ve henüz yönetici kimlik bilgileri altında hedef makinede idam var.

IIS özelliği heyeti hakkında fazla bilgi: Bunu yapmak nasıl bir blog girişi gönderdiniz http://learn.iis.net/page.aspx/516/configure-the-web-deployment-handler/

+0

Teşekkür ederiz! Bu, eksik olduğum * elementi olarak çalıştı. Şimdi mükemmel çalışıyor. –

İlgili konular