2015-02-23 192 views
1

我有一個使用TFS構建服務2013開始作爲構建的一部分的MsBuild過程。我需要將一些參數傳遞給此過程(例如構建編號)。我之前通過修改構建模板完成了此操作,並將這些參數添加到發送到MSBuild的參數列表中,這些參數運行良好。TFS構建服務,環境變量和多個構建代理

但是我發現TFS Build Services寫a number of environment variables用於運行(構建編號就是其中之一),而且我可以輕鬆更改我的MSBuild腳本,我寧願直接使用這些變量而不是修改構建模板。

但是我的問題是,當我有幾個構建代理時,這將如何工作?他們不會在環境變量中寫入其他值嗎?我可以100%確定在我的MSBuild腳本中,我沒有得到可能並行啓動的下一個版本的內部版本號?

回答

1

每個TFS構建都使用特定的內部版本號完成。如果您有多個代理在「並行」構建中工作,他們將全部使用相同的構建編號。每個構建代理將運行在他們自己的特定環境中,並且在其他代理並行運行時不會有任何問題 - 構建期間,一個代理的內部版本號不會「打斷」另一個代理。

+0

運行的每個代理都是自己的進程和環境變量。所以他們不會衝突。這些環境變量不是用戶/機器特定的,而只是過程特定的。 – Etienne 2015-02-24 15:16:09