Skip to content

Integrar servicio de configuración y parametrización

Establecer formato de configuración y parametrización como editor de software

Los editores de software al dar de alta un nuevo producto en Nautilus, a través de la aplicación Portal, pueden definir en formato JsonSchema las opciones de configuración y parametrización que van a poderse establecer en cada aplicación de dicho producto (Diferencia entre aplicación y producto):

Valores predeterminados en el JsonSchema

Dentro del JsonSchema se puede informar la propiedad default y esta será utilizada sino se se informa otro valor para dicha propiedad.

Propiedades de solo lectura en el JsonSchema

Dentro del JsonSchema se puede informar la propiedad readOnly, haciendo que no sea posible cambiar el valor en las diferentes aplicaciones. Tiene que tener informado un valor por defecto para que aplique.

Definir configuración de un producto

Diferencia entre configuración y parametrización

El servicio de configuración distingue entre configuración y parametrización. Son dos tipos de configuración distintas que en principio funcionan igual y su única diferencia es conceptual.

  • Configuración: Aquí se recomienda que se establezca únicamente la configuración que es necesaria para que la aplicación funcione. Suelen ser parámetros técnicos que la mayoría de las veces serán rellenados por los editores del producto.

  • Parametrización: Aquí se recomienda establecer opciones de personalización de la aplicación que puedan ser rellenadas por los administradores de las aplicaciones.

Rellenar configuración como administrador de una aplicación

Los editores del producto al instanciar una aplicación para un cliente o el propio cliente puede rellenar la configuración de la aplicación. En el apartado de modelos de la administración de la aplicación aparecerá un formulario autogenerado a partir del la definición de configuración en formato JSONSchema que había diseñado el administrador del producto:

Rellenar configuración de un producto

Consultar configuración mediante API REST

Además todas las Identidades Digitales que sean administradoras del producto o de la aplicación, podrán modificar y/o consultar la configuración de la aplicación vía API Rest.

E.g. Consulta configuración de una aplicación

GET https://api.dev.aquacis.absapp.net/product-instances/b12484ba-b6df-44a1-b06e-ff882bdaee60/configuration
javascript
	{
		"apiVersion": "0.0.0",
		"data": {
			"self": {
				"id": "5a993c71729c60fd80134f55",
				"data": {
					"cacheProvider": {
						"type": "mongo",
						"connectionURL": "mongodb://location:bDXoNt0DxS1fkWE12sZoI3NecjJt7NmnS8MfdHqxHXVYVjrPf2RLCkLHdTdYFGMP6RTrFAuGJ5TXQ1dogeELUw%3D%3D@location.documents.azure.com:10255/?ssl=true",
						"databaseName": "Location",
						"collectionName": "cache"
					}
				}
			}
		}
	}
	{
		"apiVersion": "0.0.0",
		"data": {
			"self": {
				"id": "5a993c71729c60fd80134f55",
				"data": {
					"cacheProvider": {
						"type": "mongo",
						"connectionURL": "mongodb://location:bDXoNt0DxS1fkWE12sZoI3NecjJt7NmnS8MfdHqxHXVYVjrPf2RLCkLHdTdYFGMP6RTrFAuGJ5TXQ1dogeELUw%3D%3D@location.documents.azure.com:10255/?ssl=true",
						"databaseName": "Location",
						"collectionName": "cache"
					}
				}
			}
		}
	}

Consumir mensajes de kafka de la configuración

La información de la configuración y parametrización también se puede obtener mediante el consumo del siguiente mensajes, previamente se debria pedir crear lo al equipo de Nautilus:

nautilus.compact.tenant.properties_${aplicationId}