jenkins - update - tfs是什麼




有什麼方法可以清理Jenkins工作區嗎? (6)

Jenkins中有一種清理工作區的方法。 您可以在構建之前或構建之後清理工作空間。

首先,安裝 Workspace Cleanup Plugin

要在 構建 之前清理工作空間:在“ 構建環境”下, 選中“ 在構建開始之前刪除工作空間 ”複選框

要在構建後清理工作空間,請執行以下 操作 :在“ 構建後動作 ”標題下,從“ 添加構建後動作” 下拉菜單中選擇“ 在構建完成後刪除工作空間”

如何在Jenkins中清理工作區? 我正在使用 AccuRev 作為版本控制工具。

我在詹金斯創建了 freestyle 項目。


不允許發表評論,因此:

的答案很好,但是如果您將Jenkins Pipeline Jobs與Freestyle Jobs混合使用, 效果 。 在管道作業上沒有DoWipeWorkspace這樣的方法。 因此,我修改了腳本以跳過那些腳本:

import hudson.model.*
import org.jenkinsci.plugins.workflow.job.WorkflowJob

// For each project
for(item in Hudson.instance.items) {
  // check that job is not building
  if(!item.isBuilding() && !(item instanceof WorkflowJob))
  {
    println("Wiping out workspace of job "+item.name)
    item.doDoWipeOutWorkspace()
  }
  else {
    println("Skipping job "+item.name+", currently building")
  }
}

您還可以根據需要按職位名稱進行過濾: item.getDisplayName().toLowerCase().contains("release")


如果您想手動清理它,對我來說,使用我的jenkins版本(似乎不需要安裝額外的插件,但是誰知道),在左列中有一個“工作區”鏈接,請點擊您的項目,然後在“工作區”上,然後在左側欄的下方出現“清除當前工作區”鏈接。


您可以在 Manage Jenkins 腳本控制台中 運行以下腳本,一次刪除所有作業的工作區。 我們這樣做是為了清理文件系統上的空間。

import hudson.model.*
// For each project
for(item in Hudson.instance.items) {
  // check that job is not building
  if(!item.isBuilding()) {
    println("Wiping out workspace of job "+item.name)
    item.doDoWipeOutWorkspace()
  }
  else {
    println("Skipping job "+item.name+", currently building")
  }
}

除了上述解決方案之外,還有一種“通用”方式-直接從Linux機器中刪除最大的空間消耗者。 您可以按照以下步驟操作:

  1. 登錄到詹金斯機(Putty)
  2. cd到Jenkins安裝路徑

也使用ls -lart列出隱藏的文件夾,通常將jenkin安裝放在.jenkins /文件夾中

[xxxxx ~]$ ls -lart

drwxrwxr-x 12 xxxx  4096 Feb  8 02:08 .jenkins/
  1. 列出文件夾空間

Use df -h 高級別顯示磁盤空間

du -sh ./*/ 列出當前路徑中每個子文件夾的總內存。

du -a /etc/ | sort -n -r | head -n 10 du -a /etc/ | sort -n -r | head -n 10 將列出/ etc /中佔用磁盤空間的前10個目錄

  1. 刪除舊版本或其他大型文件夾

通常,。/ job /文件夾或./workspace/文件夾可以是最大的文件夾。 請根據需要進入內部並刪除(請勿刪除整個文件夾)。

rm -rf theFolderToDelete






accurev