Jenkins Jobs

Esta es una lista de tipos de Jobs que se crean/utilizan normalmente en Jenkins. La intención de esta entrada es brindar una base para cualquier job que sea de alguno de estos tipos.

Build Maven Projects & Deploy to Artifactory

 * 1) Clona Repositorio
 * 2) Maven Build
 * 3) Genera jar/war
 * 4) Deploy Artifactory
 * 5) Ejecuciones períodicas tipo cron
 * 6) Ejecuciones periódicas condicionales (Ej: Si hubo cambios en el repositorio git)

Security Checks & QA

 * 1) Clona Repositorio
 * 2) Maven Build
 * 3) Gradle Build
 * 4) Instala módulos npm necesarios (frontend análisis)
 * 5) Ejecuta SonarQube Análisis
 * 6) Ejecuta Dependency Check en proyectos Gradle o Maven
 * 7) Ejecuta Quality Gates

Deploy Maven Project to Server

 * 1) Clona Repositorio
 * 2) Maven Build
 * 3) Apaga servicios necesarios (Tomcat, webserver & aplicacion si ya existe)
 * 4) Genera jar/war
 * 5) Sincroniza war a servidor remoto
 * 6) Reinicia servicios (Tomcat, webserver & aplicación si ya existe)

Deploy Front-end

 * 1) Clona Repositorio
 * 2) Instala módulos npm
 * 3) Crea estructura Grunt (de ser necesario)
 * 4) npm build - run build
 * 5) Limpia workspace en servidor remoto
 * 6) Sincroniza workspace a servidor remoto

Deploy Gradle Projects & Create Android APK

 * 1) Clona Repositorio
 * 2) Exporta variables de entorno
 * 3) Gradle build - clean assembleDebug | build
 * 4) Checkea que el APK se creó correctamente
 * 5) Archiva artifacts

Deploy Web & Static Content

 * 1) Clona repositorio
 * 2) Sincroniza workspace a servidor remoto
 * 3) Reinicia servicios (webserver & aplicación si se suben solo configs de la misma, ej. Reglas de Icinga/nagios)

Run Project’s Tests

 * 1) Clona repositorio
 * 2) Ejecuta scripts necesarios (Maven con liquibase, updaters, etc.)
 * 3) Instala módulos npm (front-end)
 * 4) npm build - test-jenkins (front-end)
 * 5) Maven build - test
 * 6) Publica resultados de JUnits de proyecto Maven/Spring Boot