2012-10-10 81 views
2

我試圖從Hudson升級到Jenkins,並且在主頁上出現「狀態碼:500錯誤」。我在這裏發佈了一個bug報告:https://issues.jenkins-ci.org/browse/JENKINS-15309,但沒有人回覆。將Hudson升級到Jenkins:500錯誤

其他人都知道發生了什麼?我真的很想從哈德森轉換到詹金斯。

部分堆棧跟蹤:從哈德森

Status Code: 500 
Exception: org.apache.commons.jelly.JellyTagException: jar:file:/appserv/devimat/hudson/war/WEB-INF/lib/jenkins-core-1.483.jar!/hudson/model/View/index.jelly:44:43: <st:include> Cannot invoke method isEmpty() on null object 
Stacktrace: 

javax.servlet.ServletException: org.apache.commons.jelly.JellyTagException: jar:file:/appserv/devimat/hudson/war/WEB-INF/lib/jenkins-core-1.483.jar!/hudson/model/View/index.jelly:44:43: <st:include> Cannot invoke method isEmpty() on null object 
at org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:112) 
at org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127) 
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563) 
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659) 
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:625) 
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659) 
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488) 
at org.kohsuke.stapler.Stapler.service(Stapler.java:162) 
[...] 

Caused by: org.apache.commons.jelly.JellyTagException: jar:file:/appserv/devimat/hudson/war/WEB-INF/lib/jenkins-core-1.483.jar!/hudson/model/View/index.jelly:44:43: <st:include> Cannot invoke method isEmpty() on null object 
at org.apache.commons.jelly.impl.TagScript.handleException(TagScript.java:716) 
at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:282) 
at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) 
at org.kohsuke.stapler.jelly.CallTagLibScript$1.run(CallTagLibScript.java:98) 
at org.apache.commons.jelly.tags.define.InvokeBodyTag.doTag(InvokeBodyTag.java:91) 
at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:270) 
at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) 
at org.apache.commons.jelly.tags.core.CoreTagLibrary$1.run(CoreTagLibrary.java:98) 
at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:95) 
[...] 

回答

0

這是我們如何做到了:

  1. 一個新的服務器上安裝詹金斯,與你喜歡的任何插件一起。

  2. 假設你有奴隸機器,安裝詹金斯代理平行於你現有的(哈德遜的)。

  3. 將您的工作從哈德森手動複製到詹金斯,隨時檢查流量。

我知道這聽起來很乏味,但它通常比試圖哈德森的DB轉換爲詹金斯現在所需要的結構要快得多, 特別是許多插件都因爲分裂改變。

乾杯

0

升級到詹金斯在這個時間點會是相當困難的,因爲該代碼庫有分歧,因爲他們在2010年底拆分這麼多,我敢確定你的錯誤是由於Hudson和Jenkins之間的預期配置文件格式不兼容。

這可能有助於確保您在升級之前擁有最新版本的Hudson,然後選擇在同一時間發佈的Jenkins版本,但我無法保證它能正常工作。

+0

我正在運行最新的Hudson。我已經發現詹金斯不支持級聯作業,但我在哈德森設置了一些這樣的工作。這部分是一個簡單的解決方法。 –