En este post explico como crear un jon con parámetros en Jenkins para que el usuario pueda escoger el flujo de trabajo de la ejecución que necesite realizar.

Prerequisitos

📌 Escenario

Queremos crear un job que:

  1. Reciba dos parámetros:
    • NOMBRE → texto con el nombre de la persona.
    • AMBIENTE → lista desplegable para elegir el entorno (dev, qa, prod).
  2. Muestre un mensaje en consola con el nombre y el ambiente.
  3. Ejecute un comando diferente según el ambiente elegido.

1️⃣ Crear el job

Vamos a crear un nuevo Job, para ello damos en New Job (Nueva Tarea), donde cargara el siguiente formulario.

Nueva tarea en Jenkins
Nueva tarea en Jenkins

Procedemos a llenar con lo siguiente:

  1. En iten name, escribe el nombre: JobConParametros
  2. Selecciona Freestyle project
  3. Haz clic en OK.

2️⃣ Configurar parámetros

  1. En la configuración del Job vamos a realizar lo siguiente:
  2. Descripción colocamos: Primer Job con parámetros 
  3. Seleccionamos el check Esta ejecución debe parametrizarse (This build is parameterized)
  4. Haz clic en añadir parámetro (Add Parameter) y seleccionamos párametro de cadena (String Parameter), donde:
    1. Nombre (name): NOMBRE
    2. Default Value: Admin
    3. Description: Escribe tu nombre.
  5. Haz clic en añadir parámetro (Add Parameter) y seleccionamos eleccion (Choice Parameter), donde:
    1. Name: AMBIENTE
    2. Choices: dev qa prod
    3. Description: Selecciona el ambiente de despliegue.
Opción parametrizable de Jenkins
Opción parametrizable de Jenkins

3️⃣ Build Steps

En Build → Add build step → Execute shell (o Execute Windows batch command si estás en Windows).

Pasos de ejecución
Pasos de ejecución

Ejemplo en Linux/macOS (Bash):

echo "Hola $NOMBRE!"
echo "Se seleccionó el ambiente: $AMBIENTE"

if [ "$AMBIENTE" = "dev" ]; then
    echo "Ejecutando en ambiente de desarrollo..."
elif [ "$AMBIENTE" = "qa" ]; then
    echo "Ejecutando en ambiente de QA..."
elif [ "$AMBIENTE" = "prod" ]; then
    echo "Ejecutando en ambiente de Producción..."
else
    echo "Ambiente desconocido"
fi

Ejemplo en Windows (CMD):

echo Hola %NOMBRE%!
echo Se seleccionó el ambiente: %AMBIENTE%

if "%AMBIENTE%"=="dev" (
    echo Ejecutando en ambiente de desarrollo...
) else if "%AMBIENTE%"=="qa" (
    echo Ejecutando en ambiente de QA...
) else if "%AMBIENTE%"=="prod" (
    echo Ejecutando en ambiente de Producción...
) else (
    echo Ambiente desconocido
)

4️⃣ Guardar y ejecutar

Haz clic en Save.

Ejecutar Job con parámetros
Ejecutar Job con parámetros

Haz clic en Build with Parameters.

Escribe tu nombre, selecciona el ambiente y ejecuta.

Ve a Console Output para ver el resultado.

🔍 Ejemplo de salida en consola

Resultado de la ejecución
Resultado de la ejecución