Visual PbAutoBuild 2022 (Release 2)

 


Hoy simplemente quiero comentar que he actualizado el programa presentado el pasado viernes 27 de Enero en el evento PowerTalks2023, Os dejo link por si os perdisteis la presentación:

youtu.be/cZbGALMbAz0

Básicamente he eliminado la necesidad de tener el los archivos de configuración .ini en blanco como plantillas.

Ahora lo que he ideado es que se descargue el archivo .ini del repositorio antes del proceso de compilación y se rellene dinámicamente con los datos sensibles.

Hay que parametrizar en el archivo setup.ini con lo siguiente:

Proyectos PowerServer:

iniFile =  Nombre del Fichero .ini donde guardamos las Credenciales de PowerServer
IniUsersKey =  Sección de archivo donde se guardará el Usuario (UserName) y la contraseña (UserPass)
IniTokenKey=  Sección del archivo con dirección del token (por defecto [Setup])

Nota:
Si el proyecto PowerServer no tiene la plantilla de seguridad JWT (que de momento es la única implementada) no es necesario descargar el archivo de configuración ni parametrizar nada.

Ejemplo:
IniFie=CloudSetting.ini
IniUsersKey=Users
IniTokenKey=Setup

Proyectos PowerClient o C/S Native:

iniFile =  Nombre del Fichero .ini donde guardamos la conexión a la Base de Datos.
IniConnectionKey =  Sección de archivo donde se guardará la conexión.

Nota:
Si no se parametriza el archivo .ini, se entiende que la cadena de conexión estará en el codigo fuente y no se descargará nada.

Ejemplo:
IniFie=Setting.ini
IniConnectionKey=Setup

Recordatorio:
Para la Cadena de conexión hay que configurarla también en el archivo setup.ini.
DBMS = MSOLEDBSQL SQL Server
LogPass = Password en Base64Url
ServerName =  Nombre Servidor
LogId =  usuario de inicio de sesion en DB
AutoCommit = False
DBParm =Database='basedatos', ...

Todos los parámetros comentados se pueden configurar en el apartado de cada proyecto dentro  del archivo setup.ini o en el aparatado setup si se quiere que sean comunes en todos los proyectos.

Respecto a las explicaciones de la presentación la aplicación ha sufrido estos cambios:

Modificación:

w_main -> string wf_download_version_control (string as_jsonpath) 

Modifico función para extraer la parte de descargar un archivo del repositorio de Git y creo la función:

Nuevas Funciones:

n_cst_functions -> string of_download_file (string as_personaltoken, string as_url, string as_filepath) 

w_main -> string wf_download_inifile (string as_jsonpath) 

Para descargar el archivo ini de configuración del repositorio de Git.

Ahora en la función w_build en vez de resetear las plantillas lo único que hago es borrar los archivos .ini descargados.

Con todo lo que conseguimos es no limitar a un nombre específico y una sección específica en los archivos ini de configuración, con lo que cada proyecto procesado puede ser distinto en ese sentido.

Os dejo como siempre el enlace de descarga de mi Github:


Y enlace al primer artículo sobre el tema:



Comentarios