2012-02-29 30 views
1

我有一個Jenkins作業設置,它在每個版本上都會調用pmd,phpcsphpunit。 Jenkins工作的主頁顯示了一張violations的圖表。我需要在Jenkins工作中刷新/重置違規記錄錶的歷史記錄。在放棄歷史之後,歷史應該以新的違反圖表和數據開始。 我不想重置整個工作歷史,但只有違反其中的一部分。雖然/var/lib/jenkins/jobs有適當的工作文件夾,但找不到Jenkins存儲其作業歷史的地方。如何刷新jenkins違規歷史記錄

使用Ubuntu 11.04與詹金斯1.451

+0

試圖刪除違規的目錄,但確實n要幫助。你是否建議刪除整個構建目錄本身?希望不會崩潰現有的jenkins工作,試圖引用不存在的目錄/文件 – thevikas 2012-04-04 08:33:14

回答

1

http://<jenkinsAddress>/job/<jobName>/configure你有Discard Old Builds。 設置Max # of builds to keep。它會刪除舊版本。

我在默認目錄(red hat/ubuntu)中安裝了jenkins。該版本位於:

/var/lib/jenkins/jobs/<jobName>/builds/。只需手動刪除它們,然後重新啓動詹金斯(或從磁盤重裝配置)

1

假設你是在項目目錄(例如/var/lib/jenkins/jobs/projname)...

詹金斯保持每個細節建立在./builds目錄的子目錄。 違規插件將詳細結果保存在每個構建的./violations子目錄中。它還爲每個構建保留主要build.xml文件中違規的摘要。爲了移除違規記錄,需要刪除所有這些信息。

build.xml中刪除衝突數據,同時保持其餘部分完好無損最好通過xmlstarlet或其他類似的命令行工具來實現。

從各種文件中刪除數據後,您需要重新啓動Jenkins以使其識別更改。

這些指令應該在最近Ubuntu的工作(假設你已經在正確的項目目錄):

sudo apt-get install xmlstarlet sudo rm -rf ./builds/*/violations/* sudo bash -c 'for BUILD in ./builds/*/build.xml; do xmlstarlet ed --inplace -d "/build/actions/hudson.plugins.violations.ViolationsBuildAction" $BUILD; done' sudo service jenkins restart