@knetik/micro-clustermanager
v3.1.10
Published
This package allows config variables to be loaded from clustermanager config json when using [micro-core](https://www.npmjs.com/package/@knetik/micro-core) the multi tenant framework.
Downloads
83
Readme
Knetik Micro Clustermanager
This package allows config variables to be loaded from clustermanager config json when using micro-core the multi tenant framework.
Replace the values of your config variables with clustmernanager property key paths.
Customer Index Resolution
Dynamic customer resolution using a simple path convention.
The adaptor loops through each name index looking for the matching app_id. On matching customer, the index is extracted and used for configuration value resolution.
Setup clustermanager access
// config/env.json
{
"CONNECTION_CONFIG_STRATEGY": "clustermanager",
"CONNECTION_CONFIG_IDENTIFIER": "customers.configurations[].name",
"CLUSTER_MANAGER_URL": "https://clustermanager...",
"CLUSTER_MANAGER_USER": "...",
"CLUSTER_MANAGER_PASS": "...",
}
Configure your application
Add the clustermanager config keys as values to your adaptor config vars
{
"MONGOOSE_USERNAME": "customers.configurations[].database.mongo.username",
"MONGOOSE_PASSWORD": "customers.configurations[].database.mongo.password",
"MONGOOSE_URL": "customers.configurations[].database.mongo.servers",
"MONGOOSE_DB": "customers.configurations[].database.mongo.dbName",
"MONGOOSE_OPTIONS": "customers.configurations[].database.mongo.options",
}
The adaptor will detect a clustermanager path value and use the resolved customer index to apply the correct clustermanager config value to the micro-core config property.
customers.configurations[0].name: "customer1"
customers.configurations[0].database.mongo.dbName
Now your mongo db adaptor will use the clustermanager config data for db connection info.
Any unresolved clustermanager keys will fallback to process.env