2010-10-20 34 views
1

Hudson作業和從屬信息在何處以及如何存儲?升級後Hudson作業和從節點丟失

我今天意外取消了Hudson升級。它不會允許我繼續升級;只能降級到以前的版本,然後再次升級。在降級之後,我最近創建的兩項工作從儀表板以及爲其中一項工作創建的從屬節點一起消失了,最近刪除的工作顯示在儀表板中。升級之後,作業和節點處於相同的狀態。

發生了什麼事?我可以恢復最近的作業和節點嗎?我該怎麼做?請記住,儘管我很瞭解C/C++,但Web服務已經不在我的範圍之內了,我不知道是一個罐子還是一場戰爭......我只是遵循在線指導來安裝並設置Hudson和它工作。我希望避免簡單地重新創造這些工作;建立其中一個並不重要。

更多信息:查看配置時,主目錄不正確;它認爲HOME是/ root /而不是/ home/hudson。它是如何改變的?我如何改變它?

哈德森以前的版本是1.379。目前它運行的是1.381。我在RHEL 5上運行它。

當我查看.hudson/jobs目錄時,最近的兩個作業都存在,並且以前刪除的作業不存在。這些工作目錄缺少他們的「工作空間」目錄。

回答

3

如您所知,作業配置存儲在HUDSON_HOME/jobs/[name]/config.xml中。

從站配置存儲在Hudson主配置文件HUDSON_HOME/config.xml中。

我不確定爲什麼Hudson在升級後重新啓動時沒有拿起作業。檢查Hudson日誌可能會提供線索,通常爲/var/log/hudson/hudson.log

如果你的工作config.xml中文件是否存在,哈德森或許可以,如果你刷新你的配置重讀他們(管理哈德森 - >刷新配置從磁盤)。如果Hudson仍然不能識別它們(並且配置文件存在),那麼最好的辦法是重新創建作業,手動從配置文件中抓取所有可能的內容(請記住,XML轉義應用於構建文本字段命令)。

+0

謝謝你的好消息;我給你+1嘗試! – jasper77 2010-10-20 20:41:51

2

當我重新訪問「管理哈德森」頁面時,我收到了一條有用的線索,並看到一條消息,指出我的數據是舊的且無法讀取的格式。這表明哈德森運行的戰爭與最近使用的戰爭不同。所以我在磁盤上搜索了任何「hudson.war」文件,並找到了兩個;一個來自幾個星期前,一個來自幾個月前。較新的一個在我期望找到的地方,而較老的一個在其他地方。我改名爲舊版。另外,我有一個start-hudson.sh腳本,在該腳本中添加了'export HUDSON_HOME =/home/hudson',並用它重新啓動了hudson。瞧,我的新工作又回來了,工作。

我本來以爲簡單地命名HUDSON_HOME變量會做到這一點,但我首先做到了這一點,並重新啓動哈德森,並沒有喜悅。只是在我重命名舊的.war並設置了我找到修復程序的環境變量之後。我的猜測是舊的.war文件的根設置爲HUDSON_HOME,並且不知何故.war正在運行,但是頁面上顯示的版本是當前版本。我不明白,但我很高興能夠恢復業務。