remote plugin performing for failed error configurar con jenkins hudson

plugin - Renombrar trabajo en jenkins/hudson



plugins jenkins io (7)

Intenté cambiar el nombre de un trabajo de hudson / jenkins. Sin embargo, no se pudo cambiar el nombre.

¿Hay alguna manera para que pueda cambiar el nombre del trabajo?


  1. Cree un nuevo trabajo con un nuevo nombre, habrá una opción de copy from un trabajo existente.
  2. copy from el trabajo que desea cambiar el nombre.
  3. Eliminar el trabajo original.

Ahora tiene un trabajo idéntico con un nombre diferente.


Dependiendo del requisito, generalmente elijo entre:

Trabajo > Configurar - modificar la propiedad del nombre del proyecto - Opciones avanzadas del proyecto , presionar Avanzado ... , establecer el valor del nombre para mostrar

Luego guarda el trabajo. No es necesario cambiar el nombre en el nivel del sistema de archivos.


La forma normal de cambiar el nombre de un trabajo:

Vaya a la pantalla Configurar y edite el campo Nombre del proyecto en la parte superior. Luego haga clic en Guardar y confirme haciendo clic en . (No haga clic en el botón Aplicar al lado de Guardar , que le dará un mensaje de error: JENKINS-17474 )

Cambiar el nombre para mostrar no cambiará el nombre del trabajo, solo cambia la forma en que se mostrará. Todavía se encontrará debajo de su nombre original a través del cuadro de búsqueda, por ejemplo, y también aparecerá en la url.

Renombrar directorios en el nivel del sistema de archivos realmente no debería ser necesario.


No puedo hacer que el script de Marc funcione, así que escriba uno basado en el script Deshabilitar todos los trabajos como se muestra a continuación. Esto es para cambiar el nombre de cualquier proyecto con "Findur.OpenComponent" a "Findur.OpenComponents".

import hudson.model.* renameChildren(Hudson.instance.items) def renameChildren(items) { for (item in items) { if (item.class.canonicalName != ''com.cloudbees.hudson.plugins.folder.Folder'') { if (( m = item.name =~ /^(Findur.OpenComponent)(/..*)$/)){ println(item.name) println m.group(1) + " " + m.group(2) newname = m[0][1] + ''s'' + m.group(2) item.renameTo(newname) } } else { renameChildren(((com.cloudbees.hudson.plugins.folder.Folder) item).getItems()) } } }


Puede cambiar el nombre del trabajo seleccionado a través de la interfaz de usuario jenkins siguiendo estos pasos:

job>configure>Advanced Project Options>Display Name

Otra forma es cambiar el nombre del directorio en el servidor Jenkins/hudson y luego restart el Jenkins .


Solo para completar, quiero mencionar la actualización del nombre del trabajo de Hudson usando la consola de script de Groovy:

// Groovy script to rename job in Hudson import hudson.model.*; def JOB_PATTERN = ~/^MY_JOB.*$/; //find all jobs starting with "MY_JOB". def NEW_PART = "_NEW" (Hudson.instance.items.findAll { job -> job.name =~ JOB_PATTERN }).each { job_to_update -> println ("Updating job " + job_to_update.name); def new_job_name = job_to_update.name + NEW_PART; //Append new part to the job name println ("New name: " + new_job_name); job_to_update.renameTo(new_job_name); println ("Updated name: " + job_to_update.name); println("="*80); }

Muy útil si necesita actualizar varias docenas de trabajos al mismo tiempo.

Nota : El siguiente código no funcionará:

job_to_update.name = new_job_name; job_to_update.save();

Establecer el nombre del trabajo como nuevo y guardar la configuración no cambiará el nombre del trabajo actual, sino que creará una copia de la configuración del trabajo con un nuevo nombre. Además, en este caso, puede haber referencias rotas, por lo que Hudson tendrá que volver a cargar la configuración.


Use la función Job.previousNames() para cambiar el nombre de varias Job.previousNames() usando la secuencia de comandos Groovy dentro de [generador de trabajos] (Complemento del generador de trabajos) (de fábrica).

El siguiente ejemplo cambia el nombre de los trabajos ci.*_2 a ci.* (Elimina el final _2 ).

[ [env: ''01'', hostname: ''host01.intranet''], [env: ''02'', hostname: ''host02.intranet''], [env: ''03'', hostname: ''host03.intranet''], [env: ''04'', hostname: ''host04.intranet''], [env: ''05'', hostname: ''host05.intranet''], [env: ''06'', hostname: ''host06.intranet''], [env: ''07'', hostname: ''host07.intranet''], [env: ''08'', hostname: ''host08.intranet''], [env: ''09'', hostname: ''host09.intranet''], [env: ''10'', hostname: ''host10.intranet''], [env: ''11'', hostname: ''host11.intranet''], [env: ''12'', hostname: ''host12.intranet''], [env: ''13'', hostname: ''host13.intranet''], [env: ''14'', hostname: ''host14.intranet''], [env: ''15'', hostname: ''host15.intranet''], [env: ''16'', hostname: ''host16.intranet''], [env: ''17'', hostname: ''host17.intranet''], [env: ''18'', hostname: ''host18.intranet''], [env: ''19'', hostname: ''host19.intranet''], [env: ''20'', hostname: ''host20.intranet''], ].each { Map config -> job("ci.${config.env}") { previousNames("ci.${config.env}_2") description("Continuous Integration on host ${config.env}") logRotator { numToKeep(5) daysToKeep(45) } label(''build'') wrappers { colorizeOutput(''gnome-terminal'') } } }