2011-06-29 31 views
1

Jenkins/Hudson中存在什麼機制來自動檢測節點上安裝的工具?Jenkins/Hudson自動工具檢測?

例如,.NET框架,Visual Studio的版本,安裝程序,生成器工具,安裝腳本語言的可執行文件,等

目前,我試圖找出是否以及如何(以及是否有意義) Jenkins可以自動檢測我們必須安裝在所有節點(Salves)上的工具。

由於我們的節點是Windows機器,由於路徑不匹配,Windows 64位與32位/ XP與Windows 7 /不同語言版本的路徑不匹配,硬編碼路徑沒有意義(恕我直言)。

此外,相當多的工具需要安裝,因此只是通過文件鏡像也不是一個選項。

很明顯,我可以爲我們的工具定義一組環境變量,並使用Jenkins的這些變量。但我更願意使用/構建一些能夠自動配置新節點/從節點的東西。

你也可以閱讀這個問題:是否有可能編寫一個插件,可以自動檢測Windows從站上的「東西」,並將其作爲節點屬性提供?(如果我想這樣做,我會從哪裏開始?)

+0

偉大的問題。 Kohsuke寫了一篇博文,可能會給你一些指示(http://blog.cloudbees.com/2011/03/writing-automatic-tool-installer-for.html)。 –

+0

您是否考慮過使用已經安裝了所有需要的工具的模板化vms? –

+0

@adam - 虛擬機的方法很吸引人,但我們沒有這個atm的資源。 –

回答

0

我已經走過了爲所有節點設置一組通用環境變量的路線。 由於我必須手動管理Windows節點上安裝的內容,因此許多工具都需要在使用它們之前運行安裝程序 - 調整每個節點上的環境變量並不是什麼大不了的事情。 (我有一個小批量腳本,通過setx設置了所有的東西。)

0

AFAIK是Jenkins可以本機自動配置的唯一工具,它們是Java JDK,Ant和Maven。我不確定其他插件可以做什麼。

您可能必須採用環境變量方式,或者您可以創建一個多工作配置,將工具安裝到從服務器上(如果它們尚不存在)。這將假定您的工具可以進行安靜安裝,並且您可以指定安裝目錄(在所有平臺上都是相同的)。

+0

謝謝。我並不一定意味着開箱即可。你能評論一下我的編輯嗎?爲此有一個自定義插件? –