2014-09-30 110 views
0

我們有一個由git觸發的teamcity構建,它執行git集成,有時會檢入當前分支(它正在從另一個源更新分支)。這顯然會在同一分支上創建另一個簽入,並使觸發器看到它。Teamcity Stop成功構建

理想情況下,我會阻止觸發器看到第二次檢查,但我似乎無法找到一種方法 - 因爲我們正在檢查的是來自其他來源的更改集合。我知道最近的更改來自構建系統用戶,但無法根據最近更改的結果查看排除方式。

所以我在構建腳本中構建了一些東西,正確地確定我們不應該繼續構建這個構建。我目前只是失敗 - 但這實際上不是一個錯誤的情況。我想停止當前的構建,而不採取任何進一步的步驟,但我希望結果是綠色的,一切都會好的。這可能嗎?我嘗試了## teamcity設置狀態,但這並不奏效。

回答

1

您可以使用排除規則設置VCS觸發器規則(5構建觸發器),該排除規則在構建系統用戶提交到存儲庫時不會觸發。排除規則看起來像這樣:

-:user=TeamCityUser 

希望這有助於!

+0

謝謝 - 但我們首先嚐試 - 不幸的是,構建從另一個存儲庫中提取 - 因此,當合並在團隊城市用戶,還有一些其他的變化不是 - 他們似乎在擊敗觸發器。 – 2014-10-02 23:04:09

0

我實際上「解決了」這個問題,只有一個大腦死亡但容易破解 - 我只是設置了一個變量「skip」,然後在每個後續步驟的開始處檢查它。醜陋的,但目前 - 它的作品。

0

您可以通過提交消息篩選出觸發器。從構建代理簽入時,請始終使用預定義的特定消息簽入。然後,您可以更改生成觸發器,當特定消息是提交的一部分時不觸發

+0

感謝,但同樣的問題 - 我們正在做一個拉,所以我們得到一大包的變化 - 與不同的消息,用戶等。_most recent_變化是從系統用戶,但在觸發級別,我不似乎能夠排除這些其他變化,如果最近他們有特別的評論或用戶。 – 2014-10-03 06:40:35