2011-09-02 10 views
10

Espero que me puedan ayudar en esto. Tengo un trabajo llamado "Plantilla" que genera un archivo template.xml. Tengo varios otros trabajos que usan este archivo template.xml. Sin embargo, antes de compilar, quería que pudieran extraer el último template.xml del espacio de trabajo de trabajo "Plantilla".¿Extraer un archivo de otro trabajo antes de construir en Jenkins?

Respuesta

4

En su trabajo Template, puede archivar el archivo template.xml como un artefacto, entonces estará disponible para los otros puestos de trabajo a una URL similar a la siguiente:

http://myserver/jenkins/job/myjob/lastSuccessfulBuild/artifact/template.xml 
+0

Terminé usando wget para obtener el archivo del área de trabajo ... ¿es esta una mala práctica? – Marx

+4

Dos riesgos al extraerlo del área de trabajo: 1) una persona con los permisos adecuados puede hacer clic en el enlace "Limpiar área de trabajo" y eliminar el archivo; 2) una construcción puede fallar sin dejar ningún archivo o un archivo inutilizable. Al extraer el archivo de los artefactos archivados siempre obtendrá el archivo de la última compilación exitosa. – highlycaffeinated

22

En su "plantilla" trabajo, en Acciones posteriores a la compilación, elija artefactar su archivo xml utilizando la opción de archivo.

Puede utilizar el "Copy Artifact Plugin" para copiarlo a todos los demás trabajos.

Jenkins Job Setup for Artifact Generator Project: enter image description here

Jenkins Job Setup for Artifact User Project: enter image description here

+0

Terminé usando wget para obtener el archivo del área de trabajo ... ¿es esta una mala práctica? – Marx

+0

Vea los comentarios de highcaffeinated a continuación. Para agregar a eso, te estás limitando a usar esclavos de Linux (puede que no sea un problema, algo en lo que pensar). Además, el archivo le permite relacionar diferentes archivos de plantilla con diferentes compilaciones de los otros trabajos (utilizando huellas digitales). – Sagar

+0

exactamente lo que estaba buscando. Gracias. – pess0a

0

En mi final utilizo un enfoque bastante strainghforward. Corro Jenkins en una disposición habitual (ubuntu 16.04 servidor) y necesito llamar al experto Checkstyle plug-in utilizando el mismo archivo de configuración checkstyle.xml que reside dentro de un trabajo dev-recursos:

enter image description here

De lo que llaman Checkstyle mvn :

enter image description here

esperan que pueda ser útil para otra persona.

Cuestiones relacionadas