2016-08-29 80 views
1

我正在構建一個檢查TFS構建服務器上磁盤空間的工具。我只能輸入一個手冊列表,但爲了長期使用,最好能從某處導入構建服務器列表。我使用以下代碼連接到TFS如何通過API/Powershell獲取TFS構建代理的列表?

add-type -Path "C:\Program Files (x86)\Microsoft Team Foundation Server 2015 Power Tools\Microsoft.TeamFoundation.Build.Workflow.dll" 
$TFSURL = "http://tfs:8080/tfs/" 
$TFS = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($TFSURL) 

$buildServer = $TFS.GetService([Microsoft.TeamFoundation.Build.Client.IBuildServer]) 

不確定如何從此處繼續。我一直無法找到相關的文檔,或者我的Google搜索技巧很生疏。

+0

而不是建立自己的工具,你可能只想看看https://tfsworkspacescleaner.codeplex.com/ – nschonni

+0

看起來很有用。但是我沒有權力包括這個,所以我會把它和我的老闆聯繫起來。謝謝! – user1869558

回答

2

因此,您正在尋找代理商,並且爲了讓您需要獲取與其關聯的控制器,因此您需要運行IBuindServer對象的QueryBuildControllers()方法。

$buildControllers = $buildServer.QueryBuildControllers() 
$buildControllers.Agents 

我通過在Google上搜索Client.IBuildServer並找到第一個鏈接到MSDN,發現了這個問題。從那裏我只是尋找一種方法,可以找到所有與服務器相關的東西,並看到QueryBuildControllers方法,然後看到返回對象有一個名爲Agents的屬性,這應該是您要查找的屬性。

+0

完美!我不太習慣TFS和微軟的管理工具,所以我沒有看到控制器是處理代理的人。很多要學習。 – user1869558

+0

說實話,我也不知道要麼=)這對我們倆都是一種學習體驗! – TheMadTechnician

相關問題