bitclimb-config
v1.0.8
Published
Bitclimb central config store
Downloads
6
Readme
bitclimb-config
Install
- Install as a dependecy
npm i bitclimb-config
Dumping config
- To use
bcl-dump
you must install this module as a globalnpm i bitclimb-config -g
- Then on terminal type and run
bcl-dump
, it will dump all json config files to the folder you are currently in.
Usage
const conf = require('bitclimb-config')
Config
The configuration file is stored at ~/.bcl-config/[environment].json
. eg. /home/user/.bcl-config/production.json
Api
init(nodeEnv,initConfigDir) Initializes a new configuration. (Overwrites current [environment] config)
- nodeEnv: The NODE_ENV you want to initialize, the initial config file must also be named as [environment].json. eg.
production.json
[String] - initConfigDir: The directory/folder (absolute path) (not the file) where [environment].json is located [String]
- returns
false
if [environment].json was not found. - returns
true
upon successfull initializing, it will also delete the initial config file.
conf.init('production','/home/user');
// this will try to load the configuration file at /home/user/production.json
load(appKey, nodeEnv) Loads the configuration as an environment variable (process.env)
- appKey: The app keys/labels to load [String|Array]
- nodeEnv: The environment config to load [String] eg.
production
this will loadproduction.json
if it exists.
conf.load('api','development');
conf.load(['api', 'db'],'production');
reInit(jsonConfig, nodeEnv) Saves/Edits the configuration
- jsonConfig: The Object config to edit. eg.
{APP: {PORT: 8080}}
this will edit/add APP.PORT with a value 8080 [Object] - nodeEnv: The environment to which the jsonConfig will be written/saved to. eg.
production
will edit theproduction.json
[String]
conf.reInit({ GENERAL: { TRUST_PROXY: true } }, 'development')
// This will edit/add GENERAL.TRUST_PROXY with a value true to development.json
getAllConfig() Returns all the config files in a json format, using the file's basename as its key.
conf.getAllConfig()