El siguiente documento tiene como propósito guiar al lector en la configuración para los pipelines de Backend de Wic y cualquier otro equipo que desee automatizar los despliegues en Weblogic dentro del ambiente Onpremise. Está dirigido a los Lideres técnicos, Arquitectos, Desarrolladores, Operaciones y demás personal técnico que tenga la necesidad de configurar los pipelines para Weblogic.

CONTROL DE VERSIONES DEL DOCUMENTO

VERSIÓN FECHA DESCRIPCIÓN RESPONSABLE
1.0 05/03/2024 Versión inicial Daniel Márquez

REQUISITOS:

• Tener el repositorio ya cargado en el control de versiones Bitbucket.

CONSIDERACIONES:

• Se debe de utilizar la versión 2.0 del workflow devops
• Se debe tener creada la carpeta cfg dentro del repositorio
• Dentro de la carpeta cfg, se debe tener los archivos devops.properties y sonar.properties.
• La versión dentro del archivo pom.xml debe tener la nomenclatura X.Y.Z.

ARCHIVO DEVOPS.PROPERTIES

  1. Ubicarse en la rama develop dentro del repositorio del ms
  2. Crear el archivo devops.properties dentro de la carpeta “cfg”
  3. Variables para indicar los stages por donde se ejecuta el pipeline:
  dev.flow=build,publish,delivery
  cert.flow=build,publish,delivery
  prod.flow=build,publish,delivery

Ambiente Desarrollo

  1. Variables de la etapa Build
  dev.stages.build.type=maven_lib_artifactory
  dev.stages.build.commandParams=clean install -DskipTests=true
  1. Variables de la etapa Publish
  dev.stages.publish.type=maven_lib_artifactory
  1. Variables de la etapa Delivery.
  dev.stages.delivery.type=weblogic_op

Ambiente Certificación

  1. Variables de la etapa Build
  cert.stages.build.type=maven_lib_artifactory 
  cert.stages.build.commandParams=clean install -DskipTests=true 
  1. Variables de la etapa Publish
  cert.stages.publish.type=maven_lib_artifactory 
  1. Variables de la etapa Delivery
  cert.stages.delivery.type=weblogic_op 

Ambiente Producción

  1. Variables de la etapa Publish
  prod.stages.publish.type=maven_promote
  1. Variables de la etapa Delivery
  prod.stages.delivery.type=weblogic_op

Ejemplo de archivo devops.properties

  dev.flow=build,publish,delivery
  cert.flow=build,publish
  prod.flow=publish

  # ####################### DEVELOPMENT ####################### #

  # Build
  dev.stages.build.type=maven_lib_artifactory
  dev.stages.build.commandParams=clean install -DskipTests=true

  # Publish
  dev.stages.publish.type=maven_lib_artifactory

  # Delivery
  dev.stages.delivery.type=weblogic_op

  # ####################### CERTIFICATION ####################### #

  # Build
  cert.stages.build.type=maven_lib_artifactory
  cert.stages.build.commandParams=clean install -DskipTests=true

  # Publish
  cert.stages.publish.type=maven_lib_artifactory

  # Delivery
  cert.stages.delivery.type=weblogic_op

  # ####################### PRODUCTION ####################### #

  # Publish (Promote)
  prod.stages.publish.type=maven_promote

  # Delivery
  prod.stages.delivery.type=weblogic_op

ARCHIVO SONAR.PROPERTIES

• Crear el archivo “sonar.properties” dentro de la carpeta cfg
• Tener en consideración que la variable sonar.projectName corresponde al nombre del registro que se creará en SonarQube

  maven.test.skip=true
  # datos del proyecto
  sonar.host.url=http://10.226.12.46:9000
  # sonar
  sonar.tests=src/test/java
  sonar.sources=src/main/java
  sonar.java.binaries=target
  sonar.coverage.jacoco.reportPaths=target/jacoco.exec
  sonar.coverage.jacoco.xmlReportPaths=target/site/jacoco/jacoco.xml
  # codificacion
  sonar.sourceEncoding=UTF-8
  # librerias
  sonar.java.libraries=/home/jenkins/.m2/repository/org/projectlombok/lombok/1.18.20/lombok-1.18.20.jar

EJECUTAR PIPELINE EN EL AMBIENTE DESARROLLO

En caso de tener más de un servidor para desplegar en Weblogic, por favor contactar con el equipo de DevOps de AD​

  1. Si se desea ejecutar el pipeline desde una rama feature en específico se debe marcar la opción "FEATURE_BRANCH" o en caso no se seleccione esta opción, se ejecutará por defecto desde la rama develop

EJECUTAR PIPELINE EN EL AMBIENTE CERTIFICACIÓN

En caso de tener más de un servidor para desplegar en Weblogic, por favor contactar con el equipo de DevOps de AD​

  1. El pipeline se ejecutará automáticamente al dar clic en el botón construir

  1. Como resultado generará un rama release con la nomenclatura release/<versión>-rc.<#build>. La versión se obtiene del archivo pom.xml y el build es un contador que aumentará en 1 por cada ejecución. Esta rama release generada es la que se promoverá a la rama master cuando se ejecute el pipeline en producción

EJECUTAR PIPELINE EN EL AMBIENTE PRODUCCIÓN

En caso de tener más de un servidor para desplegar en Weblogic, por favor contactar con el equipo de DevOps de AD​

  1. Cuando se ejecute el pipeline, pedirá una rama release (generada en el ambiente de certificación), la cual se integrará en la rama master.

  1. Al finalizar se integrará la rama release colocada en el paso anterior con la rama master.