2013-01-21 33 views
3

我們有哪些需要運行很多個人的特定構建配置沒有建立長期拖延。是否有可能讓特定的代理人僅僅運行個人構建?例如,如果我們有5個代理,那麼所有5個代理都可以運行個人構建,但其中只有3個可以被VCS觸發器觸發?我能看到做到這一點的唯一方法是創建2個代理池。這種方法的問題是你必須爲每個池指定特定的項目,這將涉及到複製構建配置。是否可以配置TeamCity在某些代理上運行個人構建?

目前個人建立與構建隊列優先級更高的配置,但這並不能幫助防止延誤時,所有代理正在運行(慢)集成測試。理想情況下,這些集成測試將排隊等待,直到3個構建代理之一能夠運行它們是免費的。有許多解決方法可以幫助減少影響,但知道實際上是否有可能將代理專用於遠程構建將是一件好事。

我們運行的是最新版本的TeamCity爲2013年1月這是7.1.3的。

+0

什麼是你最初的問題?您正在詢問特定的解決方案,但理解您的真正問題會很好。據我瞭解,您的代理數量有限(由於許可證?),而且您的緩慢集成測試阻止了開發人員的個人構建,對嗎? –

+0

是的 - 問題正是你所描述的。由於代理執行長時間運行的配置,個人版本正在排隊。運行2015年4月最新版本(v9.0.3)時,我們仍然存在相同的問題。 – psych

+0

那麼如何改變你的問題,並嘗試對特定代理運行緩慢的集成測試,並將剩下的部分留給個人構建? –

回答

0

您可以通過指定代理要求做到這一點。選擇一個參數,以區分VCS自動觸發的3個代理與其他2個代理。將其作爲代理要求添加到每個構建配置中,除了要在所有5個代理上運行的配置之外。這樣,您將集成測試限制爲3個代理,並釋放剩餘的2個代理以僅運行需要大量個人構建的配置。

而且,你用代理池建議的解決方案似乎很多不是太糟糕了,如果你使用的生成配置模板。

+1

這不回答這個問題。這允許一些構建配置不能在某些代理上運行,但與個人構建無關。這意味着使其工作的唯一方法是複製每一個不是真正解決方案的構建配置。我不想限制哪些構建配置可以在代理上運行。 – psych

+0

這就是將_build配置限制到特定的代理,這直接在代理 - >兼容配置選項卡中支持。然而,相同的_build配置可以以許多不同的方式運行,包括作爲_personal_構建。這是我們想要限制某些代理的情況。 – lesscode

相關問題