2

我已經編寫了一個腳本,它將自動更新我們正在處理的庫的版本文件。目前,我們正在使用P4 Plugin不允許Jenkins基於特定Perforce用戶的提交

當Jenkins選擇對目錄進行更改(使用輪詢)時,會觸發構建。作爲構建的一部分,Jenkins使用Perforce命令行客戶端檢出並使用腳本進行更新,該版本文件與Perforce提交編號相匹配。

這一切工作正常,問題是,當版本文件更新時,下一次輪詢發生時,它會觸發構建,因爲版本文件已更改。這導致無限循環的觸發構建來更新版本文件。

我的問題是,有沒有辦法告訴詹金斯如果更改來自某個Perforce用戶,無法構建?我發現Git plugin似乎對誰可以觸發構建有相當靈活的規則,我想知道在Jenkins中是否有一種方法可以在不依賴外部插件或非git插件的情況下執行此操作,因爲我的我正在與Perforce合作。

或者如果只有某些文件發生變化,甚至可以告訴Jenkins不要觸發構建也可以。

有沒有人有任何想法,我可以如何處理這個?

編輯: 每次有人提交到項目的主代碼行時,版本都會改​​變。這樣做,我們可以跟蹤內部庫的版本,並保持它與Perforce提交的同步。這樣我們就可以跟蹤哪個Perforce提交更新,並且可以在Jira中跟蹤它。

現在,腳本只是一個笨笨的c#命令行EXE。我希望避免把它連接到P4API.NET並自己編寫所有的邏輯。

+0

的腳本來更新版本的文件的查詢生成器是構建的一部分?爲什麼?版本多久改變一次?如果沒有任何變化,你可以改變腳本不要觸摸版本文件嗎? –

+0

更新我的問題 – KSF

+0

您是否嘗試過「排除用戶更改」的輪詢構建過濾器? – tkosinski

回答

2

使用的「不允許用戶更改」

enter image description here

相關問題