Lanzamientos

Release 5.1.0-Survivor de Onesait Platform

Llega el verano, y de paso una nueva versión de Onesait Platform. Así, el pasado viernes lanzamos la versión 5.1.0, la cual La Comunidad™ ha decidido denominar como «Survivor», siguiendo nuestra política de versionado.

Como de costumbre, si estáis interesados en conocer en qué hemos estado trabajando a lo largo de este segundo Q del 2023, no dejéis de echar un ojo a nuestro Roadmap, sin olvidar que podéis encontrar más información sobre las capacidades de la Plataforma en el Portal del Desarrollador.

Dicho esto, pasemos a ver qué novedades incluimos en esta nueva versión.

Engine

En esta distribución aplicamos estrategias ágiles y de Low Code para el desarrollo e integración de soluciones empresariales, basado en estándares compatibles con distintos vendors cloud específicos, y desplegable sobre IaaS, SaaS o infraestructuras On Premise:

  • Escalabilidad y estabilidad de cualquier infraestructura.
  • El dato en el centro.
  • Seguridad integrada de extremo a extremo.

A lo largo de este segundo período del año, hemos trabajado en los siguientes puntos:

Despliegue de la Plataforma en Google Marketplace

Tras unas semanas de trabajo con el equipo de Google (gracias, Fron y Emilio), ya tenemos disponible Onesait Platform en el Marketplace de Google.

A través del Market se puede contratar una instancia de la Plataforma, que se autoprovisionará en GCP usando GKE como motor de ejecución:

Ofrecemos dos modelos de compra: uno para entornos de Desarrollo, con un coste limitado y acceso a todos los componentes, y otro para entornos Productivos, en los que se puede elegir los componentes necesarios y su escalado.

Además, hemos creado un activo Onesait para simplificar el despliegue de otras soluciones en el Marketplace de Google.

Si estáis interesados en esta nueva opción que ofrecemos, no os perdáis este artículo que hemos preparado al respecto en el Portal del Desarrollador.

Concepto de Bundle

Este nuevo concepto surge para permitir la creación de activos en la Plataforma que puedan compartirse entre proyectos, entornos e instalaciones de la Plataforma.

Un Bundle es una agrupación de elementos de Plataforma empaquetados, bien en un ZIP o bien en una carpeta de un repositorio Git. Desde el Control Panel, podrás crearlos y también importarlos a través del Market de Bundles:

Un ejemplo de uso sería una aplicación de la Plataforma que tiene varias Entidades, APIs, Gadgets, un Dashboard y un DataFlow (como este demostrador). A través del concepto de Bundle, podrás seleccionar estos elementos de tu entorno, empaquetarlos y publicarlos en GitHub para que otros usuarios puedan desplegarlos en su instalación de la Plataforma.

Podéis encontrar más información al respecto en este apartado del Portal de Desarrollo.

Tracing distribuido en la Plataforma

Con el objetivo de incorporar nuevas capacidades en Onesait Platform para la construcción de MSA (Arquitectura de Microservicios), hemos incorporado la funcionalidad de Tracing distribuido.

Esta funcionalidad permite trazar una petición desde que se genera hasta el final, lo cual es importante en una arquitectura de este tipo en el que una petición puede pasar por varios microservicios y módulos.

Además, se incluye una interfaz de usuario integrada en el Control Panel para poder visualizar, de forma sencilla, la petición completa lo que puede ayudar a diagnosticar problemas, ver cuellos de botella, tiempos largos, etc.

Podéis encontrar más información al respecto en este artículo del Portal del Desarrollador.

Plantillas en MSA de la Plataforma

En esta release, hemos creado un nuevo sistema de creación de plantillas de microservicio en base a proyectos Git, que nos va a permitir la creación de microservicios de la Plataforma a partir de dichas plantillas, pudiendo levantar un mismo microservicio en distintos entornos.

De esta forma, se han incorporado varios modelos, y se han trasladado los arquetipos que teníamos antes, para, de esta forma, mejorar el mantenimiento de los mismos.

Las plantillas que tenemos por defecto son las siguientes:

Os hablamos más de esta nueva funcionalidad en este artículo que hemos preparado en el Portal del Desarrollador.

Configuración centralizada como proveedor Spring Cloud Config

El objetivo de esta funcionalidad es poder usar la Configuración Centralizada de la Plataforma como proveedor Spring Cloud Config, lo que simplifica su uso en aplicaciones Spring Cloud.

Para ello, hemos creado una nueva librería de la Plataforma que utiliza la configuración de Spring para Custom Composite Environment Repositories, que permite utilizar tu propio bean de SpringBoot para cargar la configuración.

Si estáis interesados, podéis encontrar más información al respecto en el Portal del Desarrollador.

Concepto de «Tag»

Un «Tag» representa un etiquetado que se puede asociar a elementos de la Plataforma, de forma que luego puedan localizarse por ese tag.

Dentro de la funcionalidad se pueden crear, asignar y buscar Tags.

Explicamos con detalle esta nueva funcionalidad en este artículo del Portal del Desarrollador.

Otras mejoras

Además de la resolución de incidencias, hemos incorporado otras mejoras:

  • Actualización de versión de Keycloak: se ha actualizado a la versión 21.1.1 para eliminar las vulnerabilidades de la versión integrada previamente, la 13.0.2. Además de solventar las vulnerabilidades de librerías de terceros y propias, se hace uso de la versión 17 de Java. Este cambio es transparente para las aplicaciones y usuarios que hacen uso de Keycloak, externamente sigue funcionando todo como siempre.
  • OpenSearch como Storage por defecto para auditoría y log centralizado.
  • Separación de OpenSearch y Elastic como motores de persistencia: para poder contemplar sus diferentes características.

INTELLIGENCE

Virtualizamos y simplificamos el acceso a los datos entre organizaciones, departamentos y sistemas, logrando una visión 360º de las entidades de negocio y facilitando su explotación mediante reglas en tiempo real, ejecución de algoritmia compleja o análisis tradicional:

  • Modelo único de datos multi-repositorio.
  • Entorno colaborativo para los Data Scientists.
  • Acceso, gestión y consumo de APIs.

El trabajo de este trimestre lo hemos orientado en las siguientes funcionalidades:

Soporte de plantillas de Microsoft Word en el Report Engine

Nuestro Report Engine se basa en Jasper Reports, lo que permite crear plantillas de informes desde un entorno visual.

En algunos casos esta aproximación no es suficiente y se necesita que un perfil menos técnico pueda crear estas plantillas. Para esos casos, hemos incorporado la capacidad de manejar plantillas de Microsoft Word en el Report Engine extendiendo Jasper con POI-TL.

Así, nos va a ser posible crear plantillas como ésta:

Seguidamente, vamos a poder subirlas al Report Engine para que renderice el informe en PDF o en Word.

Hemos creado un artículo técnico al respecto, por si estáis interesados en conocer más sobre esta funcionalidad.

Plantillas de Microsoft Word en correos electrónicos

Aprovechando la funcionalidad de soportar plantillas de Microsoft Word en el Report Engine, hemos creado esta funcionalidad que os va a permitir la creación y envío de correos electrónicos usando estas plantillas de Word.

Como en el caso anterior, cuenta con un configurador para parsear las variables:

Os describimos con detalle esta funcionalidad en este artículo que hemos preparado en el Portal del Desarrollador.

Mejoras de usabilidad en el Dashboard Engine

En esta versión hemos trabajado intensivamente para mejorar la usabilidad del Dashboard Engine, pensando en que sea un usuario de negocio el que crea estos paneles de mando sobre Gadgets preconstruidos. En este artículo del Portal del Desarrollador explicamos todas las mejoras incluidas.

Vaemos algunas de las mejoras que incorporamos.

Visualización de Dashboards como Cards

A partir de ahora, por defecto se cargará la visualización de los Dashboards y Sinópticos en modo tarjetas, además de usar paginación en servidor para agilizar la carga de contenidos.

En este artículo del Portal del Desarrollador lo explicamos con mayor detalle.

Rediseño del menú lateral

Creación automática en modo inline

Esto se ha hecho para reducir los pasos necesarios para la creación de Gadgets.

Control de librerías del Gadget al incluirlo en el Dashboard

Se ha incluido un control que permite, de forma opcional, añadir de forma automática las librerías asociadas a los Gadgets Template.

Roles ReadOnly y Runner en Notebooks

Con la nueva versión de la Plataforma, vamos a permitir estos nuevos modos a la hora de compartir los Notebooks entre usuarios de la Plataforma.

Describimos con detalle esta nueva funcionalidad en este artículo del Portal del Desarrollador.

DEVOPS & SUPPORT

Nuestro marco de referencia DevOps define la incorporación de las prácticas más recientes y contrastadas para asegurar la calidad y agilidad del proceso de desarrollo de la Plataforma.

En este cuatrimestre hemos trabajado en:

Incorporación de la gestión de vulnerabilidades al ciclo de vida de la Plataforma

Después del piloto de gestión de vulnerabilidades realizado en Q2 de 2023, en este trimestre hemos incorporado el proceso de gestión de vulnerabilidades al ciclo de vida de la Plataforma.

Como cualquier software, Onesait Platform tiene múltiples dependencias de software de terceros, desde librerías utilizadas en tiempo de desarrollo hasta sistemas operativos utilizados en los contenedores a la hora de desplegar y es vital analizar y actualizar dichas dependencias a medida que se van detectado amenazas de seguridad.

La Plataforma ha incorporado a partir de esta release (Q2 de 2023) la gestión de vulnerabilidades dentro del ciclo de vida de producto, lo que garantiza el compromiso de la Plataforma con este tema.

Hemos documentado todo el proceso seguido en esta guía del Portal del Desarrollador.

COMMUNITY

Onesait apuesta por tecnologías Open Source para crear comunidad y asegurar independencia. A lo largo de este trimestre:

  • Superamos los 1.400 usuarios en el CloudLab de Onesait Platform, nuestro entorno gratuito y de experimentación.
  • Contamos con 194 suscriptores en nuestro canal de YouTube, sumando +1000 horas totales de visualización y superando las 115.000 impresiones de nuestros vídeos y directos.
  • Nuestra versión Community de la Plataforma en GitHub supera las 1.700 clonaciones, contando con un total de 274 desarrolladores siguiendo el proyecto de cerca.
  • Respecto a nuestro Blog, éste suma un total de +455.000 lecturas de nuestros artículos, aumentando este trimestre en +73.000 lecturas, y con un total de casi 500 entradas publicadas.
  • Superamos las +357.000 impresiones totales en Twitter, con +187.000 visitas a nuestro perfil, +1.100 retweets y +1.450 likes de nuestros píos.
  • Si queréis estar al día con nuestros eventos especiales, no dejéis de apuntaros a nuestra comunidad de Meetup, en donde hay ya +700 suscritos.

Además, respecto a nuestro entorno CloudLab y nuestra versión de la Comunidad:

  • Publicada la release 5.0.0-CE: en las próximas semanas, la versión 5.0.0 Community de la Plataforma estará disponible en nuestro repositorio de Github.
  • Actualizada la instancia de CloudLab con la versión 5.0.0-Renegade.

✍🏻 Author(s)