2017-03-16 76 views
1

我試圖使用TFS 15(內部部署)啓動並運行一些自動部署。我有一個關於調用目標的powershell腳本。運行PowerShell的TFS發行版無法創建DtlDownloads

通過下載工件,部署開始正常。但是,當代理運行腳本時,它想創建一個文件夾C:\Windows\DtlDownloads(那不是我的腳本的一部分,但是我想爲TFS做準備的一部分)。失敗:

##[debug]System.AggregateException: Failed to install 'VisualStudioRemoteDeployer20597940-38b2-4ba8-9a4d-fcc894308730' from service executable path VisualStudioRemoteDeployer.exe . Consult the logs below: 
Access to the path 'DtlDownloads' is denied. 
CategoryInfo :PermissionDenied: (C:\Windows\DtlDownloads:String) [New-Item], UnauthorizedAccessException 
FullyQualifiedErrorId :CreateDirectoryUnauthorizedAccessError,Microsoft.PowerShell.Commands.NewItemCommand 

用於登錄用戶是服務器本地用戶deploy誰也該計算機上的本地管理員。我還在windows文件夾中檢查了該用戶的有效訪問,它應該能夠創建目錄。

複製步驟發生類似的情況。信號的Robocopy兩個錯誤:

2017/03/16 08:57:21 ERROR 5 (0x00000005) Getting File System Type of Destination \\server.domain.com\c$\abc\def\ 
Access is denied. 

2017/03/16 08:57:21 ERROR 5 (0x00000005) Creating Destination Directory \\server.domain.com\c$\abc\def\ 
Access is denied. 

第二是有點出乎意料的def已經存在的文件夾,但我想這是因爲得到的類型事先未能跟進。

用戶本身必須已被識別,因爲在使用無效憑證時出現不同的錯誤。我已經使用Enable-PSRemotingConfigureWinRM.ps1WinRM-Http-Https-Without-Makecert啓用WinRM。

什麼仍然可以限制權限?


更新:使用域用戶而不是本地服務器解決了該問題。但我不明白爲什麼。有人可以解釋甚至提供信息如何使其與本地用戶合作?

+0

您是否在發佈定義中使用** Deploy:PowerShell on Target Machines **任務? –

+0

@ Patrick-MSFT是的。 – ZoolWay

+0

你能分享整個日誌嗎? –

回答

1

目標主機的 域或本地管理帳戶的用戶名。

  • 格式如用戶名,域\用戶名,機器名\用戶名,。\用戶名被支持。
  • UPN格式,如[email protected]和內置系統帳戶,如NT Authority \ System不受支持。

Source Link

兩個域帳戶和本地管理員應該工作。請仔細檢查您的格式,並嘗試使用另一種格式。

+0

我試過**。\ deploy **和** machine-name \ deploy ** - 都沒有成功。我甚至嘗試過UPN格式,如上所述也沒有工作。 – ZoolWay

+0

@ZoolWay您可以嘗試在使用部署帳戶時手動運行部署目標計算機上的powershell腳本嗎? –

+0

@ZoolWay還嘗試關閉部署目標計算機上的防火牆或打開與WinRM相關的防火牆限制,例如使用'netsh advfirewall firewall add rule name =「WinRM-HTTP」dir = in localport = 5985 protocol = TCP action = allow'防火牆可能是根本原因。 –

1

一個問題可能是如果您將代理作爲服務,該服務沒有適當的權限,比如在網絡帳戶上。嘗試將其更改爲具有管理權限的用戶帳戶。