.net 临时TFS生成代理安装程序

.net 临时TFS生成代理安装程序,.net,tfs,vagrant,.net-core,.net,Tfs,Vagrant,.net Core,我正在使用TFS 2017在虚拟构建代理上构建企业.net和.net核心应用程序 我使用来自TFS本身的Vagrant创建虚拟构建代理,但需要自动安装TFS构建代理并注册到中央服务器 最终的结果将是短暂的TFS构建代理,我可以随意重建,即使是在运行中,如果速度足够快的话 有人成功地实现了Build Agent安装和注册的自动化吗?如果有,是如何实现的?我最终成功地实现了自动化,方法是将2017年vsts Agent的下载和解压缩与注册代理结合起来: $VSTSAgentFileName="vst

我正在使用TFS 2017在虚拟构建代理上构建企业.net和.net核心应用程序

我使用来自TFS本身的Vagrant创建虚拟构建代理,但需要自动安装TFS构建代理并注册到中央服务器

最终的结果将是短暂的TFS构建代理,我可以随意重建,即使是在运行中,如果速度足够快的话


有人成功地实现了Build Agent安装和注册的自动化吗?如果有,是如何实现的?

我最终成功地实现了自动化,方法是将2017年vsts Agent的下载和解压缩与注册代理结合起来:

$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不为我工作,所以您需要在
注册VSTSAgent
功能中安全地传递凭据,或者更好地使用PAT auth


最后,如果您想知道
\config.cmd
使用的命令是
\config.cmd--help
,如上所述,2017年的文档没有详细说明这些命令。

都是基于命令行的。您尝试过哪些不起作用的方法?有趣的是,它显示了大量的命令行参数,但没有。它确实表明帮助选项将显示无人参与的配置,所以我将在下一步检查它。谢谢因此,关于这一点的进一步争论确认了2017版中的命令行选项(如果没有在线记录的话)将在我成功后发布一个工作示例。