2017-07-24 41 views
1

感謝您關注我的問題。Jenkins Jobs目錄 - 佔用大量空間

我看到我的一些詹金斯工作在服務器中佔據了很多空間。如果我檢查/user/.jenkins/jobs/job-name/builds目錄,我有很多歷史版本。我真的需要保留它們嗎?

+0

只有你可以知道答案,我有一些工作保持很少的歷史,對於一個重要的項目,你可能需要能夠重現然後構建,所以我標記在git上,創建BOM等。在你需要它保持什麼。 – JamesD

回答

1

您可能不需要所有這些,取決於您的需求以及如何處理它,但是如果您轉到作業的配置,則可以看到刪除舊構建並保留一定限制的選項。例如,這裏設置爲在500次構建之後放棄舊構建。你可以做幾天或建立計數。在你看來,我會調整你的構建通常需要多少空間,而你的服務器有多少空間。

enter image description here

如果是剛剛扔出去數字(因爲不知道你有多大版本是也不是你服務器的大小)。我會說,如果你在空間上有限,那麼可能是最後5次構建或者1周構建。如果你每天頻繁地構建或者如果你每天做一些構建,我會使用構建的數量,也許時間是好的。

這裏的詹金斯很好的幫助以供參考:

這個決定的時候,如果有的話,建立記錄本項目應 被丟棄。構建記錄包括控制檯輸出,歸檔文件 以及與特定構建相關的任何其他元數據。 保持較少的構建意味着構建 記錄根目錄中將使用較少的磁盤空間,該配置系統在配置系統 屏幕上指定。

詹金斯提供了兩個選項來確定何時建立應 丟棄:

  1. 構建年齡:丟棄建立,如果他們達到一定的年齡;例如,七天前的 。
  2. 構建計數:如果某個 構建數已經存在,則丟棄最早的構建。

這兩個選項可以在 同時激活,這樣可以保持建立了14天,但最多隻能到了一個極限的50 構建,例如。如果超出任一限制,則任何超出該限制的構建都將被丟棄。您還可以確保 重要版本永遠保存,無論此處設置如何 - 單擊構建頁面上的Keep this build forever按鈕。這些規則也排除了最後一個穩定且最後成功構建的 。

在高級部分中,可以指定相同的選項,但專門用於構建構件的 。如果啓用,則對於超出定義限制的任何構建,構建工件將被丟棄 。版本 本身仍將保留;只有相關的工件,如果有的話, 將被刪除。

例如,如果一個項目建立了一些軟件和 產生大量的安裝程序,這是存檔,您不妨總是 保持控制檯日誌和有關哪些源代碼控制提交 建,而對於磁盤空間的原因,您可能只想保留最後三個構建的安裝程序。這對 項目很有意義,您可以在其中輕鬆地重新創建相同的工件, 再次構建相同的源代碼管理提交。

請注意,當此 配置更新時,或者一旦超過任何配置值 ,Jenkins不會立即丟棄項目;這些規則每次構建完成時都會被評估。

+0

謝謝理查德。 我知道我可以在作業配置中使用build discarding。 我的實際擔憂是這個數據有多重要?在什麼情況下,我可能再次需要這些數據? –

+0

這確實是個案例,取決於構建作業的作用?也許更多關於你工作的信息會有所幫助。如果它正在運行單元測試等測試,那麼可能是最後5個版本或1周價值是一個好的開始。如果這是一項運行基準測試的工作,那麼可能需要更長時間才能獲得更多趨勢數據。等等。 – richardhsu