Skip to main content

VIRIDIAN Digital Banking - Backend 5.3.20

Changelog

  • ELK: Se optimiza el registro de información en los logs para reducir el espacio utilizado en ELK, omitiendo propiedades en los endpoints GetAccountList y GetAccountDetails que normalmente tiene bastante información. En el endpoint de Login se omite una propiedad por seguridad y para ahorrar espacio de almacenamiento.
  • Estadísticas: Se realizan ajustes para que en el proceso de onboarding se pueda diferenciar correctamente entre Banca Móvil y ZA$ con fines estadísticos.
  • General: Se incorpora el código de error 11052 con descripción: "El código de verificación expiró, debes reintentar por favor." para identificar cuando el código de verificación TOTP ha expirado por exceder el tiempo de validez permitido para diferenciarlo del error 11035 con la descripción: "El Código de Autorización ya fue utilizado, intenta nuevamente por favor."
  • General: Se implementa el servicio de almacenamiento Seafile para en siguientes releases se pueda reemplazar el servicio de Amazon S3 en Onboarding y Tarjetas personalizadas.
  • Transacciones recientes: Se optimiza la ejecución de las búsquedas por texto en transacciones recientes para que demoren menos tiempo y consuman menos recursos de la base de datos.
  • Kioscos: Se corrige el error "Es posible que falte información..." que impedía realizar la Actualización de Datos cuando se llenaban los Datos Laborales.

Tareas previas

info

Les solicitamos por favor realicen los pasos Selección de versión del release y Descarga de componentes en horario de oficina para poder tener todo el equipo a disposición en caso de error.

Selección de versión del release

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook release.yml -t select -e="version=5.3.20"
    info

    Este comando selecciona la versión del release.

Descarga de componentes

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook release.yml -K -t warmup
    info

    Este comando descarga las nuevas versiones de todos los componentes que serán actualizados.

  2. En el servidor de administración, ejecutar el siguiente comando:

    docker pull seafileltd/seafile-pro-mc:11.0-latest
    info

    Este comando descarga la imagen del nuevo componente de la solución: seafile. La imagen ocupa 1.64 GB, por lo que la descarga puede demorar.

Cambios en local_vars.yml

  1. En el servidor de administración, ejecutar el siguiente comando:

    cp defaults/local_vars.yml defaults/local_vars.yml.bck
  2. En el servidor de administración, editar el archivo defaults/local_vars.yml:

    Se deben agregar las variables seafile:

    local:

    ...

    network:
    ...
    seafile: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16

    ...

    products:
    ...
    seafile: true

    ...

    seafile:
    adminPassword: changeme
    userPassword: changeme
    dbRootPassword: changeme

Instrucciones

Habilitar el mantenimiento

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook admin.yml -K -t maintenance-enable
    info

    Este comando habilita el modo mantenimiento.

Cambios en servidores

  1. En el servidor de administración, ejecutar los siguientes comandos ansible:

    ansible-playbook admin.yml -K -t stop-netcore
    ansible-playbook admin.yml -K -t stop-spring

Cambios en shorewall

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook os.yml -K -t shorewall-deploy

Cambios en seafile

  1. En el servidor de administración, ejecutar el siguiente comando:

    ansible-playbook seafile.yml -K -t setup,deploy,config
    info

    Al finalizar la ejecución del comando, se imprimirá en pantalla, entre comillas, el valor library ID. Este valor debe ser copiado y guardado. Se utilizará en el siguiente paso.

Cambios en vault

  1. En el servidor de administración, ejecutar los siguientes comandos ansible:

    ansible-playbook vault.yml -K -t backup
  2. En el path secrets/viridian/application, se deben agregar nuevas variables:

        "seafile.username": "viridian@{{ DOMAIN: obtener el valor de la variable general.domain en local_vars.yml}}",
    "seafile.password": "obtener el valor de la variable seafile.userPassword en local_vars.yml",
    "seafile.repoId": "pegar el {{ library ID }} que fue obtenido en el anterior paso",

Cambios en base de datos

  1. Ejecutar el siguiente script:

    CREATE TABLE IF NOT EXISTS file_manager (
    id bigserial NOT NULL,
    file_name varchar(100),
    file_month int,
    file_year int,
    feature varchar(100),
    file_category varchar(50),
    file_path varchar(255),
    user_code varchar(40),
    customer_code varchar(40),
    content_type varchar(20),
    file_date_create datetime year to SECOND,
    PRIMARY KEY (id)
    );
    CREATE INDEX idx_file_manager_search ON file_manager(feature, file_name, file_category, file_month, file_year, user_code, customer_code);

Cambios en componentes

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook release.yml -K -t deploy -e "type=cold"

Limpieza de archivos generados por el release

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook admin.yml -K -t cleanup

Verificación de componentes

  1. En los servidores de aplicaciones, ejecutar el siguiente comando:

    docker ps -vs
    info

    Este comando muestra el estado de todos los docker containers ordenados alfabéticamente.

  2. Revisar el output del comando y asegurarse de que todos los docker containers tengan un status UP y no haya ningún docker container detenido.

Deshabilitar el mantenimiento

  1. En el servidor de administración, ejecutar el siguiente comando ansible:

    ansible-playbook admin.yml -K -t maintenance-disable
    info

    Este comando deshabilita el modo mantenimiento.

Resumen de versiones

componenterelease 5.3.19release 5.3.20
viridian-config-properties9.40.09.41.1
server-config9.1.0
server-eureka9.1.0
vdb-routes-public9.13.0
vdb-routes-internal9.5.0
vdb-routes-bank9.4.0
gateway-public9.5.1
gateway-internal9.4.0
gateway-external9.3.0
bank-gateway9.7.0
bank-service9.4.0
batchpayments-api9.6.0
batchpayments-hosted9.5.0
beneficiaries-api9.9.0
digitalcredit-api9.5.1
digitalpay-qr9.19.0
guaranteebond-api9.5.0
manager-api9.30.09.31.2
manager-hosted9.13.0
myfinances-api9.7.1
notifications-hosted9.11.0
onboarding-api9.21.09.22.0
servicepayments-api9.7.0
statements-api9.6.0
trade-api9.10.3
transactions-api9.12.09.13.0
transactions-hosted9.5.0
utilities-api9.17.09.18.0
wiretransfer-api9.6.0
insurance-agents9.5.0
insurance-sales9.5.0
assistant-requests9.8.0
frontend-vdb9.17.0
frontend-vdb-29.17.0
frontend-admin9.10.0
frontend-kiosk9.6.09.7.2