Appearance
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.
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:
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}