plugin old delete clean builds jenkins continuous-integration hudson build-automation

old - ¿Cómo borro mi historial de compilación de Jenkins/Hudson?



jenkins dashboard plugin (11)

Recientemente actualicé la configuración de una de mis compilaciones hudson. El historial de compilación no está sincronizado. ¿Hay alguna manera de borrar mi historial de compilación?

Por favor y gracias


A continuación, se explica cómo eliminar TODOS LOS IDEAS PARA TODOS LOS TRABAJOS ... utilizando Jenkins Scripting.

def jobs = Jenkins.instance.projects.collect { it } jobs.each { job -> job.getBuilds().each { it.delete() }}


Aquí hay otra opción: eliminar las compilaciones con cURL.

$ curl -X POST http://jenkins-host.tld:8080/jenkins/job/myJob/[1-56]/doDeleteAll

Lo anterior borra la compilación # 1 a # 56 para el trabajo myJob.

Si la autenticación está habilitada en la instancia de Jenkins, se debe proporcionar un nombre de usuario y un token de API como este:

$ curl -u userName:apiToken -X POST http://jenkins-host.tld:8080/jenkins/job/myJob/[1-56]/doDeleteAll

El token de API debe buscarse desde la página /me/configure en Jenkins. Simplemente haga clic en el botón "Mostrar API Token ..." para mostrar el nombre de usuario y el token API.

Editar: uno podría tener que reemplazar doDeleteAll por doDelete en las URL anteriores para que esto funcione, dependiendo de la configuración o la versión de Jenkins utilizada.


Navegue a: %JENKINS_HOME%/jobs/jobName

Abra el archivo "nextBuildNumber" y cambie el número. Después de eso, recarga la configuración de Jenkins. Nota: el archivo "nextBuildNumber" contiene el siguiente build no que será utilizado por Jenkins.



Puede modificar temporalmente la configuración del proyecto para guardar solo la última 1 compilación, volver a cargar la configuración (que debe destruir las compilaciones anteriores) y luego cambiar la configuración de nuevo al valor deseado.


Si hace clic en Administrar Hudson / Recargar configuración desde disco, Hudson volverá a cargar todos los datos del historial de compilación.

Si los datos en el disco están en mal estado, deberá ir al directorio% HUDSON_HOME% / jobs / < projectname > y restaurar los directorios de compilación como se supone que deben ser. A continuación, vuelva a cargar los datos de configuración.

Si simplemente está preguntando cómo eliminar todo el historial de compilación, puede simplemente eliminar las compilaciones una por una a través de la IU si solo hay unas pocas, o vaya al directorio% HUDSON_HOME% / jobs / < projectname > y elimine todas las compilaciones. subdirectorios allí - corresponden a las construcciones. Luego reinicie el servicio para que los cambios surtan efecto.


Si usa el método Script Console, intente utilizar lo siguiente para tener en cuenta si los trabajos se agrupan en contenedores de carpetas.

def jobName = "Your Job Name" def job = Jenkins.instance.getItemByFullName(jobName)

o

def jobName = "My Folder/Your Job Name def job = Jenkins.instance.getItemByFullName(jobName)


Usando Script Console.

En caso de que los trabajos estén agrupados, es posible asignarle un nombre completo con barras diagonales:

getItemByFullName("folder_name/job_name") job.getBuilds().each { it.delete() } job.nextBuildNumber = 1 job.save()

o atraviesa la jerarquía de esta manera:

def folder = Jenkins.instance.getItem("folder_name") def job = folder.getItem("job_name") job.getBuilds().each { it.delete() } job.nextBuildNumber = 1 job.save()


Utilice la consola de secuencias de comandos (Gestionar Jenkins> Consola de secuencias de comandos) y algo así como este script para eliminar de forma masiva el historial de compilación de un trabajo https://github.com/jenkinsci/jenkins-scripts/blob/master/scriptler/bulkDeleteBuilds.groovy

Ese script asume que solo quiere eliminar un rango de compilaciones. Para eliminar todas las compilaciones para un trabajo determinado, utilice esto (probado):

// change this variable to match the name of the job whose builds you want to delete def jobName = "Your Job Name" def job = Jenkins.instance.getItem(jobName) job.getBuilds().each { it.delete() } // uncomment these lines to reset the build number to 1: //job.nextBuildNumber = 1 //job.save()


Vaya al %HUDSON_HOME%/jobs/<projectname> remove builds y elimine lastStable, lastSuccessful links y elimine el archivo nextBuildNumber .

Después de hacer los pasos anteriores, vaya al siguiente enlace desde UI
Jenkins-> Gestiona Jenkins -> Recarga la configuración desde el disco

Hará lo que necesites


Esta respuesta es para Jenkins

  1. Vaya a la página de inicio de Jenkins → Gestione JenkinsConsola de script

  2. Ejecute el siguiente script allí. Cambia copy_folder al your project name

Código:

def jobName = "copy_folder" def job = Jenkins.instance.getItem(jobName) job.getBuilds().each { it.delete() } job.nextBuildNumber = 1 job.save()

codeketchup.blogspot.sg/2016/05/…