2013-04-11 61 views
0

有沒有一種方法可以在Jenkins版本中輕鬆地彙總來自不同SVN源代碼位置的組件,並使用Tycho作爲構建工具?彙總來自不同源代碼位置的組件

比方說,產品包括五個插件,一個可能位於trunk/core/pluginA,另一個/trunk/ui/pluginB,另一個分支/branches/ui2/pluginC/trunk/ui/pluginC。我想創建Jenkins的作業,將聚合所有這些插件。

我當然可以單獨檢查各個存儲庫URL位置,但是當您有20或30個插件可以使用時,此任務會變得有點困難。我能以某種方式使用它們在SVN樹中的位置檢出所有這些組件作爲聚合的信息嗎?

+1

如果您正在尋找二進制聚合,請查看http://wiki.eclipse.org/Tycho/Nexus_Unzip_Plugin – jsievers 2013-04-12 07:26:57

+0

@jsievers謝謝,我不認爲這是我所需要的。我只是在尋找一種簡單的方法來聚合組件。考慮這個例子http://pastebin.com/2ngWXiUL,這是我真正喜歡Buckminster處理組件聚合的方式。 – 2013-04-12 14:32:57

回答

1

我不知道Buckminster構建,但我想它(就像PDE無頭構建一樣)也處理與源代碼管理系統的交互。 Tycho不處理源代碼管理,但假定在調用Tycho構建之前源已經被檢出。這意味着,您需要首先自行處理來源的結帳。

我認爲SVN不允許你一次簽出不同的分支。因此,你需要迭代構建。這是如何可以編寫腳本:

  1. 清除本地倉庫(刪除所有結果從以前的版本)
  2. 對於每捆
    • 退房來源
    • 建立與mvn clean install;這會將構建結果放置到本地Maven存儲庫中
  3. 通過包含所有包的eclipse-repository彙總總體結果。默認情況下,everything built locally with install is part of the target platform,所以這個mvn調用將能夠看到之前構建的所有包。

您需要自行維護捆綁包和源位置列表。我不知道有任何自動化支持。

+0

謝謝。看過不同的可用解決方案後,我決定寫一個ANT腳本來完成這個任務。 – 2013-04-22 19:25:01