VIRIDIAN Digital Banking - Ansible 4.1.14
Changelog
-
Mensajes & Anuncios: Se habilita links internos con las acciones de "Mis Finanzas" y "Habilitar Za$" para el envío de Difusiones, Anuncios y Carrusel.
-
Mensajes & Anuncios: Se habilita la posibilidad de diferenciar difusiones y anuncios entre Banca Móvil y Za$
-
Za$: Se habilita el módulo de Za$ para realizar el Ethical Hacking. Esta pendiente la habilitación de Onboarding porque estamos esperando a Facephi.
-
General: Se habilita la posibilidad para que se pueda cambiar el usuario de base de datos usado para Banca Digital del usuario que se usará para el proyecto Za$.
-
General: Corregimos el error por el cual no estamos solicitando a los clientes la calificación de la Banca Móvil.
Tareas previas
Estas tareas pueden hacerse en cualquier horario.
Selección de versión del release
-
En el servidor de administración, ejecutar los siguientes comandos:
git fetch --all --tags -fgit checkout 4.1.14-prodPara el entorno de preproducción usar el tag 4.1.14-preprod
Descarga de imágenes docker
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook admin.yml -K -t release-warmup
Instrucciones
Habilitar el modo mantenimiento
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook admin.yml -K -t maintenance-enable
Cambios en los servidores
- Ninguno.
Cambios en base de datos
-
Ejecutar el siguiente script:
-- direct_device
create table direct_device(
id bigserial not null,
access_code varchar(20),
access_code_due_date datetime year to second,
status varchar(50),
device_type varchar(50),
vfk_operation char(25),
vfk_user bigint,
vfk_customer bigint,
user_code varchar(40),
customer_code varchar(40),
login_id varchar(40),
fullname varchar(80),
device_id varchar(100),
vfk_device bigint,
access_pin varchar(100),
activation_date datetime year to second,
main_account_code varchar(40),
main_account_code_display varchar(40),
main_account_type_code varchar(3),
main_account_branch_code varchar(5),
onboarding_direct_trn_id_trn varchar(25),
first_device smallint,
login_fail_count integer,
user_create varchar(40),
date_create datetime year to second,
user_update varchar(40),
date_update datetime year to second,
admin_user_create varchar(40),
admin_user_update varchar(40),
admin_date_update datetime year to second,
PRIMARY KEY (id)
);
create index idx_direct_device_access_code_status on direct_device(access_code, status);
create index idx_direct_device_device_user on direct_device(device_id, user_code, login_id);
create index idx_direct_device_user_code_status on direct_device(user_code, status);
create index idx_direct_device_user_id_status on direct_device(vfk_user, vfk_customer, status);
-- onboarding_direct
create table onboarding_direct(
id bigserial not null,
type varchar(50),
subtype varchar(50),
step varchar(50),
vfk_operation varchar(25),
doc_id_number varchar(40),
doc_id_complement varchar(10),
doc_id_extension varchar(10),
fullname varchar(100),
name varchar(30),
last_name_1 varchar(30),
last_name_2 varchar(30),
phone_number varchar(40),
email varchar(100),
device_id varchar(100),
firebase_id varchar(200),
push_engine varchar(40),
application_version varchar(50),
operative_system varchar(50),
device_manufacturer varchar(50),
device_name varchar,
customer_code varchar(40),
user_code varchar(40),
account_code varchar(40),
has_account smallint,
vfk_onboarding_product bigint,
complete_date datetime year to second,
last_error_code varchar(10),
last_error_desc varchar(255),
failed_biometric_count int,
failed_error_count int,
last_failed_biometric_attempt_date datetime year to second,
access_code varchar(20),
customer_data lvarchar(8192),
trace_id varchar(25),
user_create varchar(40),
date_create datetime year to second,
user_update varchar(40),
date_update datetime year to second,
admin_user_create varchar(4),
admin_user_update varchar(40),
admin_date_update datetime year to second,
PRIMARY KEY (id)
);
create index idx_onboarding_direct_trn on onboarding_direct (vfk_operation);
create index idx_onboarding_direct_step on onboarding_direct (step);
-- direct_seller
create table direct_seller(
id bigserial not null,
name varchar(100),
status varchar(50),
activation_date datetime year to second,
store_name varchar(100),
default_note varchar(100),
unique_payment smallint,
qr_life varchar(50),
main_vfk_user bigint,
main_account_code varchar(40),
main_account_code_display varchar(40),
main_account_type_code varchar(3),
main_account_branch_code varchar(5),
vfk_direct_device bigint,
vfk_user bigint,
user_create varchar(40),
date_create datetime year to second,
user_update varchar(40),
date_update datetime year to second,
admin_user_create varchar(40),
admin_user_update varchar(40),
admin_date_update datetime year to second,
PRIMARY KEY (id)
);
create index idx_direct_seller_main_user on direct_seller(main_vfk_user);
create index idx_direct_seller_direct_device on direct_seller(vfk_direct_device);
--
INSERT INTO onboarding_codes (asoban_code, param_type, param_code, param_value, parent_type, parent_code, order, display, user_create, date_create, user_update, date_update, admin_user_create, admin_user_update, admin_date_update)
VALUES('1016', 'DIRECT_DOCUMENT_TYPE', '1', 'Contrato caja de ahorro', NULL, NULL, 1, NULL, 'no-user', current, NULL, NULL, NULL, NULL, NULL);
INSERT INTO onboarding_codes (asoban_code, param_type, param_code, param_value, parent_type, parent_code, order, display, user_create, date_create, user_update, date_update, admin_user_create, admin_user_update, admin_date_update)
VALUES('1016', 'DIRECT_DOCUMENT_TYPE', '2', 'Términos y Condiciones', NULL, NULL, 3, NULL, 'no-user', current, NULL, NULL, NULL, NULL, NULL);
INSERT INTO onboarding_codes (asoban_code, param_type, param_code, param_value, parent_type, parent_code, order, display, user_create, date_create, user_update, date_update, admin_user_create, admin_user_update, admin_date_update)
VALUES('1016', 'DIRECT_DOCUMENT_TYPE', '3', 'Reglamento caja de ahorro', NULL, NULL, 2, NULL, 'no-user', current, NULL, NULL, NULL, NULL, NULL);
Cambios en kafka
- Ninguno.
Cambios en vault
-
En el path secrets/viridian/application, agregar las siguientes variables:
"database.directPassword": "changeme",
"database.directUser": "changeme",
"facePhi.directApiKey": "2h4R5yTjTP7h49bBG61R8iQY3OFSET9HLsVncrP7",info- Los valores de las variables
database.directUserydatabase.directPassworddeben ser los mismos que de las variables ya existentes:database.userydatabase.user. Luego se coordinará la creación de un usuario exclusivo para ZA$ y la actualización de las variables en vault.
- Los valores de las variables
-
En el path secrets/viridian/vdb-notifications-hosted, agregar la siguiente variable:
"firebase.direct.config": "{\n \"type\": \"service_account\",\n \"project_id\": \"bec-vdb-direct\",\n \"private_key_id\": \"0a59bb275da282d25ff60f59c2a7cf75f5ee1dfd\",\n \"private_key\": \"-----BEGIN PRIVATE KEY-----\\nMIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCtA7md4GzEpljj\\nAGGfJEGQtqzvD+7egMT1nyw3HqX8cteipR6qZcDJgJpwFUZJKvBq2IYylkTJeoIp\\ns7WdA/MEyoYaqKeoaBy/GmLEddEA/Jyt2l/Vzu0MlKMcJtKlKozKJf/Ng/toskYt\\nEZ5PBGnL5ezB05CMNmPzJeDjzP8aQd94SkWVfGYbQLWp9TG76Btc/tzJ9/ocTnMU\\n/GES87nlafMs3C4toH+rgeyXt3AHcW32vqqcGZlo1G3Y2bPry2XrEV7Z4RtYka8N\\nqH/v2qAMmk9a3HdtKgYYn5XA1JcNRg+5YL6md3rlJeK+n78+ON23ArOjqs20nYV4\\n0E5XLq5jAgMBAAECggEABQcGHcyvHYBqejTWh8NHtewalqwt4skZUjPXtLSXuBmp\\niZFVnSbT+4kc+AGLDc7nC+EbB5TRH8B2FIuJvAm51yyADdMgMBHPv3+WjO+jF6Dh\\nqy1Ydip6LPtglh67WNfpyGlRqYwe5EKjPf9J1Nvn3vlHuLTwrMYW5kwHPr7Q6N/e\\nbLO6Jay9eRtJqyb2XpcLWtX075bLbz/5dTo20Y2f9y3BEMc5ziwER/FhoOsNHM7i\\ngabke6MsMeCS0SqIQlc4+hjjGiYPVEN50NcB6xuInMPCiPq0Z+/olPvVH6Fz3N7F\\nnN67rpSBtmk5Lx/Msf1IQa9ktFHEsMeZqTL/5pYZfQKBgQDhDAffqpD/SpBkqQmm\\nJ0V65ipVgIGcF+B5sdVXKtIk9Rfex4ysLssM0HcZDpLzepBceQaZJI/d8B1/ZiLb\\nFNvLOYyvm3Jof2Klp55AkAoJ+WYZdmwFzXYvrBGBYGjV2w/ip/yWmHlBJHoqWve0\\nuKDH8xuomPi5IaC63R1r4YGPRQKBgQDEz531lJrnfN6G8I00jvJ1H3EIgZ9K+xXs\\nP70t9KwEgSRBlyzvZcxQWnnc9GaZOGRABCEOY5X/K/OYVAkgf24qbzyaubHH9+QQ\\nh7YJ39rXJI/z/rgRqeBxU4uD+YPc6qWBzRh/eKnC1LIaDcAOZ2CxzfgLkZ2YwVEp\\ncVLMz0kthwKBgQCE8lKEc4MNDcOXc7Tbjz+ghvBjanMm/4QA4GmkAQv8AT6EwWX9\\nIfeaLlztVIrDg5hcyLJ5Lfw/pGYIqRHWUtA1kl3mL/K6gOaJ7iezBGSp18fVKvxN\\nwT8cko4U3BuSmsMbpxm07YZUUXRKKUtEW/2/oYKpaxUkaRVGzvFele2v8QKBgQCx\\nIo/v3U1CNd/uoYjlmhbclWzdlBSznqMPnBp/xywfbcAdDJxT51Jpq9TsqkfBdcC8\\n4TqDQdxZ6sv2+QOx7R9RMAbi12kMKq9otUyBPKoxYuXxW/t9YmDwfpoeMS+eYM6P\\nsfFvoUFhap/V1TRbgm3D+jZa6zdlqfCLlURJs/MP9wKBgQCtLf6y/PdsCafaXoe6\\n3i396kUWUHheQJ/TWk8xD1onoribvjeA6n4masNsa6tsCxii6nP/GG8CTDMB5ySp\\nxpfUgo3Wft2Xs9489hQC2Y3qU0ZAxy5UgYZXEgRZrTzIlCXwyICr++aeWB5pFn8O\\nuKh5ID+WuEiLMw5z2J/pK36hzQ==\\n-----END PRIVATE KEY-----\\n\",\n \"client_email\": \"firebase-adminsdk-q0fb3@bec-vdb-direct.iam.gserviceaccount.com\",\n \"client_id\": \"105903319704893474162\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"https://www.googleapis.com/robot/v1/metadata/x509/firebase-adminsdk-q0fb3%40bec-vdb-direct.iam.gserviceaccount.com\",\n \"universe_domain\": \"googleapis.com\"\n}\n",infoSe debe copiar el valor de arriba (una sola linea) y agregarla usando el editor en modo json
Cambios en configuración
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook config.yml -K -t viridian-deploy,vdb-deploy
Cambios en rutas
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook routes.yml -K -t vdb-public-deploy
Cambios en spring
- Ninguno.
Cambios en backend
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook vdb.yml -K -t backend-deploy
Cambios en frontend
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook vdb.yml -K -t frontend-deploy
Cambios en gateways
- Ninguno.
Verificación de componentes
-
En los servidores de aplicaciones, ejecutar el siguiente comando:
docker ps -vs -
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.
Limpieza de archivos generados por el release
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook admin.yml -K -t cleanup
Deshabilitar el modo mantenimiento
-
En el servidor de administración, ejecutar el siguiente comando ansible:
ansible-playbook admin.yml -K -t maintenance-disable
Resumen de versiones
| componente | release 4.1.13 | release 4.1.14 |
|---|---|---|
| viridian-config-properties | 8.9.0-bec | 8.10.0-bec |
| vdb-config-properties | 8.21.0-bec | 8.22.1-bec |
| cobalt-config-properties | 8.1.0-bec | |
| server-config | 8.1.0-bec | |
| server-eureka | 8.1.0-bec | |
| vdb-routes-public | 8.7.0-bec | 8.8.3-bec |
| vdb-routes-internal | 8.1.0-bec | |
| vdb-routes-bank | 8.2.0-bec | |
| cobalt-routes-public | 8.1.0-bec | |
| cobalt-routes-internal | 8.1.0-bec | |
| jade-routes-public | 8.1.0-bec | |
| gateway-public | 8.5.0-bec | |
| gateway-internal | 8.3.0-bec | |
| bank-gateway | 8.5.0-bec | |
| bank-service | 8.1.0-bec | |
| batchpayments-api | 8.3.0-bec | |
| batchpayments-hosted | 8.2.0-bec | |
| beneficiaries-api | 8.2.1-bec | 8.3.0-bec |
| digitalcredit-api | 8.4.0-bec | |
| digitalpay-qr | 8.11.0-bec | 8.12.0-bec |
| guaranteebond-api | 8.2.0-bec | |
| manager-api | 8.18.0-bec | 8.19.0-bec |
| manager-hosted | 8.10.0-bec | |
| myfinances-api | 8.8.0-bec | 8.9.0-bec |
| notifications-hosted | 8.8.0-bec | 8.9.0-bec |
| onboarding-api | 8.10.0-bec | 8.11.0-bec |
| servicepayments-api | 8.1.0-bec | 8.3.0-bec |
| statements-api | 8.2.0-bec | |
| trade-api | 8.1.0-bec | |
| transactions-api | 8.8.0-bec | |
| transactions-hosted | 8.2.0-bec | |
| utilities-api | 8.5.0-bec | |
| wiretransfer-api | 8.1.0-bec | |
| insurance-agents | 8.1.0-bec | |
| insurance-sales | 8.1.0-bec | |
| assistant-requests | 8.1.0-bec | |
| frontend-vdb | 5.12.0-bec | |
| frontend-vdb-2 | 5.1.5-bec | |
| frontend-admin | 1.20.0-bec | 1.21.0-bec |
| frontend-kiosk | 2.2.0-bec |