Merge pull request #51 from Herrie82/herrie/multibank

Examples: Improve config implementation for multibank
This commit is contained in:
Dimitar Nanov 2021-03-30 08:53:35 +03:00 committed by GitHub
commit 13f6d03cb2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 24 additions and 3 deletions

View File

@ -0,0 +1,10 @@
{
"url": "https://ebics.server",
"partnerId": "EBICS ParnerID Production",
"userId": "MyUserIdProduction",
"hostId": "MyHostIdProduction",
"passphrase": "MyPasswordProduction",
"keyStoragePath": "./keys-prod",
"bankName":"Production Bank",
"languageCode":"en"
}

View File

@ -20,11 +20,22 @@ const getDefaultEnv = () => {
return parArg || process.env.NODE_ENV; return parArg || process.env.NODE_ENV;
} }
const loadConfig = (configDirectory = path.join(__dirname, './config'), env = getDefaultEnv()) => { const getBankIdentifier = () => {
console.log(`Loading config form ${configDirectory} with env set to ${env}.`); const [,,,parArg] = process.argv;
return parArg || "testbank";
}
const getEntityIdentifier = () => {
const [,,,,parArg] = process.argv;
return parArg || ""
}
const loadConfig = (configDirectory = path.join(__dirname, './config'), env = getDefaultEnv(), bank = getBankIdentifier(), entity = getEntityIdentifier()) => {
entity ? console.log(`Loading config from ${configDirectory} with env set to ${env}, bank set to ${bank} and entity set to ${entity}.`) : console.log(`Loading config from ${configDirectory} with env set to ${env} and bank set to ${bank}.`);
global.entity = entity;
const baseConfigFile = path.join(configDirectory, 'config.json'); const baseConfigFile = path.join(configDirectory, 'config.json');
const envConfigFile = env ? path.join(configDirectory, `config.${env}.json`) : null; const envConfigFile = env ? entity ? path.join(configDirectory, `config.${env}.${bank}.${entity}.json`) : path.join(configDirectory, `config.${env}.${bank}.json`) : null;
return { return {
...safeLoadJson(baseConfigFile), ...safeLoadJson(baseConfigFile),