Podemos usar la expresión de When en un jenkinsfile para especificar las condiciones bajo las cuales se debe ejecutar un paso de compilación particular o una acción posterior a la construcción. Le permite especificar una expresión booleana que determina si el paso de compilación o la acción posterior a la construcción se deben ejecutar.
Este tutorial cubre los conceptos básicos de usar la expresión cuando se trata de tuberías de Jenkins.
Jenkins cuando la expresión
La expresión cuando debe contener al menos una condición booleana. También puede combinar múltiples condiciones, pero todas las condiciones especificadas deben evaluar verdaderas para que el bloque se ejecute.
A continuación se muestra la sintaxis de la expresión de When en Jenkins:
cuando
En este caso, especifica la expresión booleana que se evalúa antes de ejecutar o no ejecutar el paso de compilación o la acción posterior a la construcción.
Existen varios tipos de condiciones que puede usar en la expresión cuando incluye lo siguiente:
Veamos una tubería de ejemplo sobre cómo podemos usar la expresión cuando la expresión en Jenkins.
Ejemplo 1: Ejemplo básico
La siguiente tubería demuestra un uso básico de ejemplo de la expresión de When en Jenkins:
tubería
agente cualquiera
parámetros
booleanParam (nombre: 'run_build', defaultValue: falso)
etapas
etapa ('construir')
cuando
Expresión parámetros de retorno.Run_build
pasos
echo 'run build está configurado en verdadero'
En la tubería de ejemplo proporcionada, la etapa de compilación solo se ejecuta cuando el parámetro run_build es verdadero. Por defecto, el valor del parámetro run_build es falso. En este caso, el paso se omite como se muestra en la siguiente salida de la consola:
Si cambiamos el valor del parámetro run_build a true, el paso de compilación se ejecuta como se muestra en lo siguiente:
tubería
agente cualquiera
parámetros
booleanparam (nombre: 'run_build', defaultValue: true)
etapas
etapa ('construir')
cuando
Expresión parámetros de retorno.Run_build
pasos
echo 'la construcción de ejecución es verdad'
La salida de la consola resultante es la siguiente:
En este caso, se ejecuta el mensaje de eco en el paso de compilación.
Ejemplo 2: Usando no
También podemos usar la condición no para negar el resultado de una expresión dada como se demuestra en la siguiente tubería:
tubería
agente cualquiera
parámetros
booleanParam (nombre: 'run_build', defaultValue: falso)
etapas
etapa ('construir')
cuando
no
Expresión parámetros de retorno.Run_build
pasos
// Los pasos de construcción van aquí
Con esta modificación, la etapa de compilación solo se ejecuta si el parámetro run_build es falso.
Ejemplo 3: Uso del AllOf Conditional
Usando la condición total, toda la expresión especificada debe evaluar como verdadera para el paso para ejecutar.
etapa ("ejecutar este paso")
cuando
ALLOF
expresión1
expresión2
Conclusión
La expresión When en Jenkins es una declaración condicional que le permite especificar las condiciones bajo las cuales se debe ejecutar un paso de compilación o una acción posterior a la construcción.
Le permite usar las expresiones booleanas para controlar la ejecución de su tubería, haciéndola más flexible y adaptable a diferentes escenarios de construcción. Puede usar la expresión When para especificar una sola condición o para combinar múltiples condiciones utilizando operadores lógicos como && (y) y || (o). Siéntase libre de explorar la documentación para más.