Skip to main content
Version: next

Release

Esta es la forma que toman la mayoría de los comandos del playbook release.yml:

ansible-playbook release.yml -K -t <<tag>>

Los nombres de los tags descritos a continuación deberán ir en vez de <<tag>> al momento de ejecutar el comando. Ej:

ansible-playbook release.yml -K -t select

Se pueden ejecutar múltiples tags, solamente deben ser separados por comas, sin espacios. Ej:

ansible-playbook release.yml -K -t select,warmup

Tags

Select

info

select: Obtendrá la nueva versión desde el repositorio de git que corresponde al entorno y selecciona el commit que corresponde a la versión del release que será aplicado en el entorno.


Servidores afectados:

  • administración
    ansible-playbook release.yml -t select -e="version={{ version }}"
variables

version: La versión del release a ser aplicado. En vez de {{ version }} irá la versión del release.

Warmup

info

warmup: Descargará las versiones de los componentes que corresponden al release seleccionado. Descarga el componente de configuración en el servidor de administración, y descarga los componentes de rutas, spring, gateway, backend y frontend en los servidores de aplicaciones. La descarga se hace creando archivos docker-compose.yml temporales y ejecutando el comando docker compose pull en el servidor de administración.


Servidores afectados:

  • administración
  • aplicaciones

Deploy

info

deploy: Realizará el despliegue de los componentes que se incluyen en el release seleccionado. Primero, copiará el archivo de configuración descargado en el servidor de administración a los servidores de apicaciones y alertará a los componentes de la solución del cambio. Entonces generará los archivos docker-compose.yml dentro de los servidores de aplicaciones para los componentes: spring, gateway, backend y frontend.


Servidores afectados:

  • administración
  • aplicaciones
    ansible-playbook release.yml -K -t deploy -e="type={{ type }}"
variables

type: El tipo de release a realizar, puede tomar el valor de cold o hot. En vez de {{ type }} irá uno de los posibles valores.

  • hot: Este tipo de release se realiza en 'caliente'. El entorno no entra en mantenimiento, sino que se actualizan uno por uno los servidores de aplicaciones. Antes de empezar la actualización en un servidor, este se deshabilita.
  • cold: Este tipo de release se realiza con el entorno en mantenimiento. Todos los servidores de aplicaciones son actualizados al mismo tiempo.