我設置TFS部署currenlty工作,並已試圖寫爲部署PowerShell腳本。我一直在StackoverFlow上研究並閱讀了許多貼出的問題和答案,但我無法真正使腳本工作。MSdeploy在PowerShell中 - 顯示或幫助我的東西真的工作
到目前爲止,當我運行於Windows PowerShell ISE以下PS,它運行。
$ envMsDeploy = $ ENV:msdeploy
$ DirMsDeploy =分離路徑-Parent $ envMsDeploy
#定義當前位置到$ DirMSDeploy = C:\ Program Files文件\ IIS \微軟Web部署V2
設定位置$ DirMsDeploy
$ ARG = @(
'-verb:同步';
' - 源:的contentPath =' + $ buildDroppedLocation;
'-dest:contentPath ='+ $ destinationPath;
'-whatif> C:\ TEMP \ msdeploy.log'
)
$ runMSDeploy =($ DirMsDeploy + 「\ Msdeploy.exe」 + $ ARG)
$ runMSDeploy | out-file c:\ temp \ MsDeployTest.bat
我把最後一句話確認得到了保存的$ runMSDeploy。現在看起來$ runMSDeploy保存了我想要放置的內容。
MSDeployTest.Bat包含C:\ Program Files \ IIS \ Microsoft Web Deploy V2 \ Msdeploy.exe -verb:sync -source:contentPath = [[c:\ source folder]] -dest:contentPath = [[Detination UNC路徑] -whatif> C:\ TEMP \ msdeploy.log
這是我停留在現在。由於使用c:\ Program Files文件包含空文件夾,CMD沒有成功運行,而給我的錯誤,「cmd.exe的:‘C:\ PROGRAM’不被識別爲一個內部或外部命令」
如果您有任何建議或想法,請告訴我。
感謝,
wanttogoshreddingeveryday
$ envMsDeploy = $ ENV:msdeploy $ DirMsDeploy =分離路徑-Parent $ envMsDeploy #定義的當前位置爲C:\ Program Files文件\ IIS \微軟Web部署V2 設置位置$ DirMsDeploy $ ARG = @( '-verb:同步'; ' - 源:的contentPath =' + $ buildDroppedLocation; '-dest:的contentPath =' + $的DestinationPath; '-whatif> C:\ TEMP \ msdeploy.log' ) $ runMSDeploy =($ DirMsDeploy +「\ Msdeploy.exe」+ $ arg) –
wanttogoshreddingeveryday
2011-03-25 19:33:20
#BEGIN $ MsDeployDir =(Get-ItemProperty -Path HKLM:\ SOFTWARE \ Microsoft \ .NETFramework \ AssemblyFolders \ MSDeploy)。'(default )' $ MsDeployExe = $ MsDeployDir |加入路徑-ChildPath msdeploy.exe &cmd.exe/c $('「」{0}「-verb:sync -source:contentPath =」{1}「-dest:contentPath =」{2}「-whatif 「'-f $ MSDeployExe,$ BuildDroppedLocation,$ DestinationPath) #END – wanttogoshreddingeveryday 2011-03-28 23:28:56
開發TFS部署者的Jason Stangroome幫助我在這裏http://tfsdeployer.codeplex.com/discussions/251531 – wanttogoshreddingeveryday 2011-03-28 23:29:41