En este post aprenderás a crear el primer Job en Jenkins usando las herramientas de proyecto libre, se creara un script que mostrara un mensaje en la terminal.
Prerequisitos
- Realizaremos la instalación de jenkins o lo puede usar con docker como se explica en los enlaces.
- Revisa y conoce la arquitectura de jenkins para que entienda como usarlo correctamente.
Paso a paso — Crear un job "Proyecto libre" en Jenkins
1️⃣ Ingresar a Jenkins
Abre tu navegador y entra a la URL de tu Jenkins, por ejemplo: http://localhost:8080, Inicia sesión con tu usuario y contraseña.
2️⃣ Crear un nuevo job
En el menú principal, haz clic en “New Job” o “Nueva Tarea”.

En el campo "Enter an item name":

- Escribe el nombre del job, por ejemplo: Primer Job
- Selecciona "Freestyle project" (Proyecto libre).
- Haz clic en OK.
*️⃣ Explicación general de los componentes del formulario
Sección General
Opción | Función principal | Ejemplo de uso | Recomendación |
---|---|---|---|
Desechar ejecuciones antiguas | Borra builds viejos y artefactos para ahorrar espacio. | Guardar solo las últimas 10 ejecuciones o las más recientes de 30 días. | Actívalo siempre en entornos con muchas ejecuciones para evitar llenar el disco. |
Esta ejecución debe parametrizarse | Permite pasar variables al job. | VERSION=1.2.3 , ENV=producción . |
Úsalo cuando un mismo job deba correr con variaciones (versiones, entornos, flags). |
GitHub project | Enlaza el job con un repo de GitHub. | URL del repo: https://github.com/empresa/proyecto . |
Úsalo para identificar rápido el repositorio, pero recuerda que no clona el código. |
Throttle builds | Limita ejecuciones simultáneas. | Máx. 2 builds al mismo tiempo. | Úsalo si el job consume muchos recursos y puede saturar el servidor. |
Lanzar ejecuciones concurrentes | Permite que el mismo job corra en paralelo. | Dos personas disparan el job y ambos se ejecutan. | Solo si el job no toca los mismos archivos/rutas para evitar conflictos. |
Periodo de espera | Retrasa el inicio tras ser disparado. | Esperar 10 segundos antes de iniciar. | Útil si hay commits seguidos y quieres agrupar cambios antes de ejecutar. |
Contador de reintentos | Reintenta si falla al iniciar. | Reintentar 3 veces si hay error de arranque. | Úsalo si el fallo puede ser por recursos o red intermitente. |
Congelar si hay proyecto padre ejecutándose | No ejecuta hasta que el “padre” termine. | Job hijo espera a que el padre acabe. | Ideal para pipelines dependientes donde el orden importa. |
Bloquear si un proyecto relacionado está en ejecución | Evita conflictos entre jobs que comparten recursos. | Job B espera a que Job A libere la BD. | Úsalo cuando haya recursos críticos compartidos. |
Usar directorio de trabajo personalizado | Cambia la carpeta donde Jenkins guarda datos. | Guardar en /mnt/ssd/job1 . |
Úsalo para mejorar velocidad o usar rutas específicas (SSD, NAS). |
Sección de Triggers
Trigger | Función principal | Ejemplo de uso | Recomendación |
---|---|---|---|
Lanzar ejecuciones remotas | Permite ejecutar el job desde una URL o script usando un token. | Script que llama: curl "http://jenkins/job/mi-job/build?token=ABC123" . |
Úsalo cuando otro sistema externo deba disparar la build. Asegura el uso de HTTPS y tokens seguros. |
Construir tras otros proyectos | Ejecuta el job cuando uno o varios jobs especificados finalicen. | Job A compila → Job B despliega automáticamente. | Ideal para encadenar jobs cuando no quieres usar un pipeline. |
Ejecutar periódicamente | Programa la ejecución según una expresión CRON. | H 2 * * * → Todos los días a las 2 AM. |
Úsalo para builds o pruebas recurrentes, aunque no haya cambios en el código. |
GitHub hook trigger for GITScm polling | Dispara el job cuando GitHub envía un webhook avisando de cambios. | Push a rama main → Jenkins recibe el webhook y ejecuta. |
Más eficiente que hacer polling. Requiere configurar el webhook en GitHub. |
Consultar repositorio (SCM) | Jenkins revisa periódicamente si hay cambios en el repositorio. | H/5 * * * * → Revisa cada 5 minutos. |
Úsalo solo si no puedes configurar webhooks. Consume más recursos que el hook. |
Sección Environment
Opción | Función principal | Ejemplo de uso | Recomendación |
---|---|---|---|
Delete workspace before build starts | Borra la carpeta de trabajo antes de iniciar el build. | Evitar que queden binarios viejos que afecten la compilación. | Úsalo si tu proyecto es sensible a residuos de builds anteriores. Evítalo si necesitas conservar artefactos. |
Use secret text(s) or file(s) | Inyecta credenciales seguras (texto o archivos) en el entorno. | Token API, archivo .pem para autenticación. |
Siempre usar para credenciales, nunca poner claves en el código. |
Abortar la ejecución si se atasca | Cancela el job si supera un tiempo límite sin avanzar. | Fallar si dura más de 15 minutos. | Muy útil para evitar bloqueos y liberar recursos. |
Add timestamps to the Console Output | Muestra hora en cada línea del log. | Ver cuánto tarda cada comando. | Actívalo siempre en entornos de producción para depurar tiempos. |
Inspect build log for published build scans | Detecta y resalta enlaces de build scans en el log. | Mostrar link de Gradle Enterprise automáticamente. | Úsalo si trabajas con Gradle/Maven y quieres acceder rápido a los reportes. |
With Ant | Ejecuta tareas de Apache Ant. | ant compile , ant test . |
Solo para proyectos que usen Ant; no es común en proyectos nuevos. |
Build Steps (Pasos de construcción)
Son las tareas principales que Jenkins ejecuta durante el build. Aquí defines qué hace el job una vez que se dispara.
- Qué puedes configurar aquí:
- Ejecutar comandos:
- Execute shell → comandos Bash/Linux.
- Execute Windows batch command → comandos CMD/PowerShell.
- Integraciones con herramientas:
- Ejecutar Maven, Gradle, Ant, Docker, etc.
- Scripts personalizados.
- Ejecutar scripts de otros repositorios.
- Ejecutar comandos:
- Ejemplo de flujo en Build Steps:
- Descargar dependencias (
npm install
omvn install
). - Compilar (
npm run build
omvn package
). - Ejecutar pruebas (
npm test
omvn test
).
- Descargar dependencias (
- Claves para usarlos bien:
- Cada Build Step se ejecuta en orden.
- Si uno falla, por defecto el job se detiene.
- Puedes combinar varios pasos (ej. compilar → probar → empaquetar).
Acciones para ejecutar después (Post-build Actions)
Son tareas que Jenkins ejecuta al final del build, después de que la parte principal termine. Se usan para publicar resultados, notificar o lanzar otras ejecuciones.
- Qué puedes configurar aquí:
- Publicar artefactos → Guardar binarios, reportes o paquetes generados.
- Enviar notificaciones → Email, Slack, Microsoft Teams, etc.
- Ejecutar otros jobs → Encadenar pipelines.
- Publicar reportes de pruebas → JUnit, Allure, cobertura de código.
- Desplegar en servidores → FTP, Kubernetes, AWS, etc.
- Generar builds parametrizados → Lanzar otros jobs con variables específicas.
- Ejemplo de flujo en Post-build Actions:
- Guardar el archivo
.jar
generado como artefacto. - Publicar reporte de pruebas unitarias.
- Enviar correo con el resultado del build.
- Disparar el job de despliegue en producción.
- Guardar el archivo
- Claves para usarlos bien:
- No interrumpen el build principal (a menos que tú lo configures así).
- Son ideales para tareas de entrega, monitoreo y notificación.
3️⃣ Configuración General
Aquí defines la información básica del proyecto:

- Descripción → Escribe qué hace el job.
- (Opcional) Activa Discard old builds para desechar ejecuciones viejas.
- Si quieres parametrizarlo, marca This build is parameterized y agrega parámetros.
- Si tu proyecto está en GitHub, puedes marcar GitHub project y pegar la URL del repo.
4️⃣ Sección Source Code Management (SCM)
Si quieres que Jenkins descargue código automáticamente:

- Selecciona Git.
- Ingresa la URL del repositorio:
- Si es privado, selecciona las credenciales guardadas en Jenkins.
- Si no vas a usar código, deja en None.
5️⃣ Triggers (Disparadores)
Elige cómo se ejecutará el job:

- Para la primera prueba, selecciona Build periodically y escribe: "H/5 * * * *"
- O deja sin marcar para ejecutarlo manualmente.
6️⃣ Build Environment
- Puedes activar:
- Delete workspace before build starts (para limpiar antes de empezar).
- Add timestamps to the Console Output (para ver tiempos en log).
7️⃣ Build Steps
Aquí defines qué hará el job:
Haz clic en Add build step → Execute shell (Linux) o Execute Windows batch command (Windows).

Escribe un comando sencillo para probar:
En Linux/macOS:
echo "Hola, Jenkins!"
date
En Windows:
echo Hola, Jenkins!
echo %date% %time%
8️⃣ Post-build Actions
- Opcional: Agrega una acción como E-mail Notification o Archive the artifacts si quieres guardar archivos generados.
- Para este primer job, puedes dejarlo vacío.
9️⃣ Guardar y ejecutar
- Haz clic en Save.
- Para probar, en la pantalla del job, haz clic en Build Now.
- Jenkins creará un nuevo build y lo mostrará en la lista.

🔟 Ver resultados
- Haz clic en el número de build (#1) que aparece en la izquierda.
- Luego entra a Console Output para ver:
