Jenkinsfile cuando la expresión

Jenkinsfile cuando la expresión

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:

  1. Rama - Especifica un nombre de rama o una expresión regular que se usa para que coincida con la rama actual.
  2. expresión - Especifica una expresión groovy que se evalúa para determinar si el paso de compilación o la acción posterior a la construcción deben ejecutarse.
  3. no - Niega la condición que lo sigue.
  4. de todo - Especifica que todas las condiciones que lo siguen deben ser ciertas para el paso de compilación o la acción posterior a la construcción.
  5. cualquiera de - Especifica que al menos una de las condiciones que lo siguen debe ser cierto para el paso de compilación o la acción posterior a la construcción.

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.