-1
我正在使用TFS 2017在虛擬生成代理上構建企業.net和.net核心應用程序。短暫的TFS生成代理程序設置
我使用TFS本身的Vagrant創建虛擬構建代理,但需要自動安裝TFS構建代理並註冊到中央服務器。
最終的結果將是短暫的TFS構建代理,我可以隨意重建,即使在運行中,如果它足夠快。
有沒有人設法自動化建設代理安裝和註冊,如果是的話如何?
我正在使用TFS 2017在虛擬生成代理上構建企業.net和.net核心應用程序。短暫的TFS生成代理程序設置
我使用TFS本身的Vagrant創建虛擬構建代理,但需要自動安裝TFS構建代理並註冊到中央服務器。
最終的結果將是短暫的TFS構建代理,我可以隨意重建,即使在運行中,如果它足夠快。
有沒有人設法自動化建設代理安裝和註冊,如果是的話如何?
我終於成功地它到底自動化通過組合下載和解壓2017 VSTS劑,與註冊代理:
$VSTSAgentFileName="vsts-agent-win7-x64-2.105.7.zip"
$VSTSAgentDownloadUrl="http://yourvstsagentdownloadserver/" + $VSTSAgentFileName
$TempFolder="c:/Temp/"
$VSTSAgentDownloadPath=$TempFolder + $VSTSAgentFileName
$VSTSAgentFolder="c:/vsts_agent"
$TFSServerUrl="http://yourtfsserver:8080/tfs"
function Download-VSTSAgent{
Write-Host("Downloading: " + $VSTSAgentDownloadUrl)
Write-Host("To: " + $VSTSAgentDownloadPath)
$WebClient = new-object System.Net.WebClient
$WebClient.DownloadFile($VSTSAgentDownloadUrl, $VSTSAgentDownloadPath)
}
function Unzip-VSTSAgent{
Write-Host("Unzipping: " + $VSTSAgentDownloadPath)
Write-Host("To: " + $VSTSAgentFolder)
Add-Type -assembly "system.io.compression.filesystem"
[io.compression.zipfile]::ExtractToDirectory($VSTSAgentDownloadPath, $VSTSAgentFolder)
}
function Register-VSTSAgent{
cd $VSTSAgentFolder
& .\config.cmd --unattended --auth Negotiate --username yourdomain\yourusername --password yourpw --url $TFSServerUrl --pool yourpool
}
Download-VSTSAgent
Unzip-VSTSAgent
Register-VSTSAgent
注:我以前協商作爲認證PAT不適合我,因此您需要安全地傳遞Register-VSTSAgent
函數中的憑證 - 或者甚至更好地使用PAT auth。
最後,如果您想知道.\config.cmd
使用.\config.cmd --help
的命令 - 如上所述,2017年的文檔沒有詳細說明這些。
它都是基於命令行的。你有什麼嘗試不起作用? –
有趣的是[2015官方文檔](https://www.visualstudio.com/en-us/docs/build/actions/agents/v1-windows)顯示了大量命令行參數,但[TFS 2017文檔](https ://www.visualstudio.com/en-us/docs/build/actions/agents/v2-windows)不。它確實顯示幫助選項將顯示無人值守配置,因此我將在下一步檢查該選項。謝謝! – j3r3m7
因此,如果在這方面進一步糾纏確認命令行選項在2017年版本,如果沒有在線記錄 - 將發佈一個工作示例,當我成功。 – j3r3m7