2015-12-22 44 views
0

我有一個jenkins工作,建立和部署maven項目。這項工作取決於我傳遞給工作的一些參數。這項工作也從git倉庫中檢出代碼。使用不同的源代碼,但在parellel jenkins工作

我有4個分支(dev,test,release和patch)作爲項目的源代碼。

如何使用不同的參數和不同的項目源代碼運行同一作業。

示例: - 讓我們通過將param1和param2傳遞給作業並使用dev分支來觸發作業運行。

  • 考慮到從步驟1執行尚未完成,我怎麼可以通過傳遞參數3和param4但使用測試分支這次

我想要做不同的生成觸發同樣的工作來自同一作業的不同來源分支並行。

其他建議的設計?

+0

做兩個建立一個運行他們與不同的參數。 – bish

回答

0

這裏存在的一個固有問題是 - 當您激發同一作業的另一個版本時,它將覆蓋它正在使用的工作區。

有IMO解決這個問題的方法有兩種:

  1. 就像在他的評論中提到@bish - 兩個單獨的作業。
  2. 傳遞一個參數,該參數將啓動一個小腳本,用於將項目簽出到workspace/subdir文件夾而不是workspace。您可以在Add pre-build step - >Execute shell script中執行此操作。在這裏,你需要確保你不'清空工作區文件夾'。 (Jenkins GIT插件有一個選項可以將項目簽出到一個子目錄中,但是我無法弄清楚如何有條件地觸發這個項目,所以在這裏通過一個簡單的手動干預。) 接下來,您可以選擇給可用的分支機構清單answer s

讓我知道這是否有幫助。

+0

所以如果我能夠在每次觸發作業運行時都能夠在子目錄中執行構建,那麼任何團隊都可以訪問jenkins頁面,傳遞參數,選擇其分支並執行構建,對嗎? –

+0

我相信如此。您的第n個第3個工作使用/工作空間,但是您的第n個第4個工作使用/工作空間/子目錄。那樣.. –

+0

可以同時觸發同一作業的多少個構建? 這個想法是,我們有一個項目,應該從構建到部署的同一個構建週期,同時我們有多個團隊需要使用不同的參數和不同的git分支來構建。我試圖把最好的設計,讓每個團隊都用自己的params循環,獨立部署而不影響其他團隊 –

相關問題