jenkins jenkins-plugins accurev

¿Hay alguna forma de limpiar el espacio de trabajo de Jenkins?



jenkins-plugins accurev (9)

Además de las soluciones anteriores, hay una forma más "COMÚN": eliminar directamente el mayor consumidor espacial de la máquina Linux. Puedes seguir los siguientes pasos:

  1. Inicie sesión en la máquina Jenkins (Masilla)
  2. cd a la ruta de instalación de Jenkins

Usando ls -lart para enumerar la carpeta oculta también, normalmente la instalación de jenkin se coloca en .jenkins / folder

[xxxxx ~]$ ls -lart drwxrwxr-x 12 xxxx 4096 Feb 8 02:08 .jenkins/

  1. enumerar los espacios de carpetas

Use df -h para mostrar el espacio en disco en un nivel alto

du -sh ./*/ para enumerar la memoria total para cada subcarpeta en la ruta actual.

du -a /etc/ | sort -n -r | head -n 10 du -a /etc/ | sort -n -r | head -n 10 enumerará los 10 directorios principales que consumen espacio en disco en / etc /

  1. Eliminar la compilación anterior u otra carpeta de gran tamaño

Normalmente, la carpeta ./job/ o la carpeta ./workspace/ pueden ser la carpeta más grande. Entra y elimina la base que necesites (NO elimines toda la carpeta).

rm -rf theFolderToDelete

¿Cómo puedo limpiar el espacio de trabajo en Jenkins? Estoy usando AccuRev como herramienta de control de versiones.

freestyle proyectos de freestyle en Jenkins.


Asumiendo que la pregunta es sobre la limpieza del espacio de trabajo del trabajo actual, puede ejecutar:

test -n "$WORKSPACE" && rm -rf $WORKSPACE/*


Deberá instalar este complemento antes de que aparezcan las opciones mencionadas anteriormente

Complemento de limpieza del espacio de trabajo

Este complemento agrega la casilla de verificación a todas las configuraciones de trabajo para permitirle eliminar todo el espacio de trabajo antes de ejecutar cualquier paso (control de fuente inc)

Esto es útil para asegurarse de que siempre comience desde un punto conocido para garantizar cómo se ejecutará la compilación


Hay una manera de limpiar el espacio de trabajo en Jenkins. Puede limpiar el espacio de trabajo antes o después de la compilación.

Primero, instale el complemento de limpieza del espacio de trabajo .

Para limpiar el espacio de trabajo antes de compilar: En Entorno de compilación, marque la casilla que dice Eliminar espacio de trabajo antes de que comience la compilación.

Para limpiar el espacio de trabajo después de la compilación: bajo el encabezado Acciones posteriores a la compilación, seleccione Eliminar espacio de trabajo cuando la compilación se realice en el menú desplegable Agregar acciones posteriores a la compilación .


Puede ejecutar el siguiente script en Manage Jenkins Scripts Console para eliminar los espacios de trabajo de todos los trabajos de una sola vez. Hicimos esto para limpiar el espacio en el sistema de archivos.

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") } }


Si desea limpiarlo manualmente, para mí con mi versión de jenkins (no parecía necesitar un complemento adicional instalado, pero quién sabe), hay un enlace de "espacio de trabajo" en la columna izquierda, haga clic en su proyecto, luego en "espacio de trabajo", luego aparece un enlace "Borrar espacio de trabajo actual" debajo de él en la columna del lado izquierdo.


no se permite comentar, por lo tanto:

La respuesta de funciona bien, pero no si tiene Jenkins Pipeline Jobs mezclado con Freestyle Jobs. No existe un método como DoWipeWorkspace en trabajos de canalización. Entonces modifiqué el Script para omitirlos:

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") } }

también puede filtrar por nombres de trabajo si es necesario: item.getDisplayName().toLowerCase().contains("release")



IMPORTANTE: ¡ Es seguro eliminar el espacio de trabajo para un trabajo de Jenkins dado siempre que el trabajo no se esté ejecutando actualmente!

NOTA: Supongo que su $JENKINS_HOME está configurado por defecto: /var/jenkins_home .

Limpia un espacio de trabajo

rm -rf /var/jenkins_home/workspaces/<workspace>

Limpiar todos los espacios de trabajo.

rm -rf /var/jenkins_home/workspaces/*

Limpie todos los espacios de trabajo con algunas excepciones.

Este usa grep para crear una lista blanca:

ls /var/jenkins_home/workspace / | grep -v -E ''(job-to-skip|another-job-to-skip)$'' / | xargs -I {} rm -rf /var/jenkins_home/workspace/{}

Limpia 10 espacios de trabajo más grandes

Éste usa du y sort para enumerar espacios de trabajo en orden de mayor a menor. Luego, usa la cabeza para agarrar los primeros 10:

du -d 1 /var/jenkins_home/workspace / | sort -n -r / | head -n 10 / | xargs -I {} rm -rf /var/jenkins_home/workspace/{}