使用 Powershell 获取 TFS XAML Build Agents 的工作目录

Get working directory of TFS XAML Build Agents using Powershell

我的目标是想出一个 Powershell 脚本来清理 XAML 构建代理的工作目录。

要获取构建代理的工作目录,我可以使用下面的 C# 代码,效果很好。

我想在 Powershell 中实现相同的功能。

static void Main(string[] args)
    {
        var TPC = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("CollectionURI"));

        IBuildServer buildServer = TPC.GetService<IBuildServer>();

     \ {Microsoft.TeamFoundation.Build.Client.BuildServer}

        var buildController = buildServer.GetBuildController("ControllerName");

        var buildAgent = buildController.Agents;

        var workingFolder = string.Empty;

        List<string> list = new List<string>();

        foreach (IBuildAgent agent in buildAgent)
        {
            list.Add(agent.BuildDirectory);
        }
    }

如果找不到等效的 Powershell,我将不得不通过 exe 或 dll 在 Powershell 中使用 C#。

与你的C#代码类似:

$url = "http://xxxx:8080/tfs/CollectionName/";
$tfs = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($url);
$buildservice = $tfs.GetService("Microsoft.TeamFoundation.Build.Client.IBuildServer");
$buildcontroller = $buildservice.GetBuildController("ControllerName");
$buildagents = $buildcontroller.Agents;
foreach($buildagent in $buildagents)
{
    Write-Host $buildagent.BuildDirectory;
}