[Jenkins] 刪除過舊的建置記錄,釋放磁碟空間

[Jenkins] 刪除過舊的建置記錄,釋放磁碟空間

今天有一個本來跑的順順的 Jenkins 任務,突然連續失敗,

進去裡面一看,詳細訊息不太記得了,

但是有提到 disk space 這個關鍵字…

(工程師看到這個詞應該都會立刻亮紅燈 XD)

 

進去 Jenkins 機器一看,

果然 Jenkins 的 /var/lib/jenkins 所屬的分割區滿了,

不過看工作區 (workspace) 佔用的空間似乎沒那麼大,

反倒是 builds 目錄佔據了很大的空間…

 

進去裡面一看,每一個子目錄都放了 unittest 和 code coverage 的結果

(因為這個 Jenkins 任務是在處理 unittest 和 code coverage),

一個子目錄就佔了 100 MB,

然後這個任務又很常執行,因此吃掉了幾十 GB 的空間…

 

比較簡單的方法,是限制 Jenkins 保留的歷史記錄數量,

這樣子舊的建置記錄就不需要保留,自然就不會占用空間了~

只要到 Jenkins job 裡的 General 頁面,

將「忽略舊 Builds」打勾,並且輸入要保留的天數或次數就行了:

 

網路上有人還會寫一些看起來有點複雜的程式,來清除舊的 Jenkins 記錄,

不過其實只要這邊設定好,再跑一次 Jekins job,

Jenkins 自然就會幫你把多餘老舊的建置記錄刪掉,

磁碟空間很快就回復正常囉~^^

(本頁面已被瀏覽過 14 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料