significado - jenkins tutorial
Tiempo de espera en un paso de compilaciĆ³n de Jenkins (8)
En Jenkins, ¿hay alguna manera de dar diferentes tiempos de espera a cada paso de compilación o uno seleccionado?
El plugin de tiempo de compilación ofrece la funcionalidad de tiempo de espera "Abortar la construcción si está atascado" en el proyecto completo, lo que necesito es dar tiempos de espera diferentes para cada paso. De esta manera puedo hacer que mi proceso sea más eficiente.
El plugin Build-timeout no es aplicable a las tuberías. consulte la wiki
Para el tiempo de espera de la interconexión, pruebe algo como:
timeout(time: 30, unit: ''MINUTES'') {
node {
sh ''foo''
}
}
Respuesta similar de otro hilo: cómo agregar un paso de tiempo de espera a Jenkins Pipeline
En los trabajos de canalización puede envolver su (s) paso (s) con el timeout
siguiente manera:
timeout(time: 5, unit: ''MINUTES'') { // steps to execute }
Esta pregunta se hizo originalmente antes de que existiera el Gasoducto Jenkins. Aunque puede continuar utilizando y configurando Jenkins a través de la GUI, actualmente se recomienda hacer la transición de sus proyectos a la canalización. El uso de Pipeline le permite realizar un seguimiento de los cambios en su canalización y almacenarlo como código, por lo que es fácil recrear su construcción en cualquier máquina si necesita mover su servidor Jenkins.
Con la interconexión, es trivial agregar un tiempo de espera a una parte muy específica de su compilación. La sintaxis de la interconexión es simple y fácil de usar.
timeout(time:5, unit:''DAYS'') {
input message:''Approve deployment?'', submitter: ''it-ops''
}
Pregunta relacionada: Cómo agregar un paso de tiempo de espera a Jenkins Pipeline
Ejemplo descaradamente tomado de: CloudBees Top 10 Mejores prácticas para Jenkins Pipeline Plugin
La manera más fácil (y esa es la forma en que lo estoy haciendo) es tener proyectos diferentes que dependan unos de otros y construirlos en una fila. No es perfecto, pero la otra opción sería supervisar la ejecución de diferentes complementos con diferentes herramientas / comportamiento de compilación.
Aún así, el enfoque funcionará, aunque es una mierda ...
Por cierto, hay un buen complemento que puede ayudarte usando un conjunto de proyectos: plugin Build Pipeline . Lo estoy usando ahora mismo para visualizar y verificar la tubería que he creado. Es realmente útil ...
No hay tal funcionalidad que yo sepa. JENKINS-8900 solicita.
Si no desea utilizar el plugin de Jenkins y desea agotar el tiempo de espera de una secuencia de comandos o cualquier comando, entonces puede utilizar la utilidad incorporada de Linux "timeout".
timeout -s KILL 1m ./test
El comando anterior ejecutará el ejecutable de test
durante 1 minuto y si continúa ejecutándose después del tiempo de espera, el comando esperará y matará el proceso mediante la KILL
.
Creo que el comando de timeout
de GNU coreutils puede ser lo que quieras. Esto es bajo la suposición de que tus pasos de compilación son guiones.