mirror of
https://github.com/harish2704/tconfig.git
synced 2026-09-10 07:01:07 +00:00
* Update Readme
* Update examples * Version bump
This commit is contained in:
@@ -38,37 +38,42 @@ hari@hari-VirtualBox:~app$ node xyz.js
|
||||
|
||||
```
|
||||
|
||||
#### Override using NODE_ENV
|
||||
values from config/production overides the default one
|
||||
#### Read additional config based on NODE_ENV variable.
|
||||
If we specify NODE_ENV=xyz then, config/xyz.js will overide the values from default.js. **Overriding is a deep merge**
|
||||
|
||||
```bash
|
||||
hari@hari-VirtualBox:~app$ env NODE_ENV=production node xyz.js
|
||||
{ port: 5000 }
|
||||
{ port: 4000 }
|
||||
```
|
||||
|
||||
#### Override using Environtment Variables.
|
||||
#### Set any configuration variable using Environtment variable.
|
||||
By setting an Environtment variable '<Prefix><key>=<value>', we can set config[key] as value.
|
||||
Default prefix is `TC_`
|
||||
For eg:
|
||||
|
||||
TC_port will set config.port
|
||||
* `TC_port` will set config.port
|
||||
|
||||
* `TC_a.b.c` will set config.a.b.c
|
||||
|
||||
TC_a.b.c will set config.a.b.c
|
||||
```bash
|
||||
hari@hari-VirtualBox:~app$ env NODE_ENV=production TC_db.mysql.user=root node xyz.js
|
||||
{ port: 5000, db: { mysql: { user: 'root' } } }
|
||||
```
|
||||
|
||||
#### Override using Environtment Variables. Custom Prefix
|
||||
Prefix can be changed using Environtment variable
|
||||
##### Use custom env prefix.
|
||||
|
||||
default prefix can be changed using Environtment variable by setting `TC_PREFIX` Environtment variable
|
||||
|
||||
```bash
|
||||
export TC_PREFIX=MYAPP_
|
||||
export MYAPP_PORT=8080
|
||||
export MYAPP_port=8080
|
||||
hari@hari-VirtualBox:~app$ env MYAPP_db.mysql.user=root node xyz.js
|
||||
{ port: 8080, db: { mysql: { user: 'root' } } }
|
||||
|
||||
```
|
||||
|
||||
#### use custom config directory
|
||||
config directory can be changed using Environtment variable
|
||||
config directory can be changed using Environtment variable by setting `CONFIG_DIR` Environtment variable
|
||||
```bash
|
||||
hari@hari-VirtualBox:~app$ env CONFIG_DIR=../config TC_PREFIX=MYAPP_ NODE_ENV=production MYAPP_db.mysql.user=root node xyz.js
|
||||
{ dir: '../config', db: { mysql: { user: 'root' } } }
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
{
|
||||
"port":3000
|
||||
"port":3000,
|
||||
"pool":{
|
||||
"min":2,
|
||||
"max":10
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -1,2 +1,2 @@
|
||||
|
||||
console.log( require('tconfig'));
|
||||
console.log( require('../../'));
|
||||
|
||||
+5
-2
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "tconfig",
|
||||
"version": "0.1.1",
|
||||
"version": "0.1.2",
|
||||
"description": "A simple transparent config file loader for Nodejs applications. any config field can be overriden using environmen variables",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
@@ -20,5 +20,8 @@
|
||||
"bugs": {
|
||||
"url": "https://github.com/harish2704/tconfig/issues"
|
||||
},
|
||||
"homepage": "https://github.com/harish2704/tconfig#readme"
|
||||
"homepage": "https://github.com/harish2704/tconfig#readme",
|
||||
"dependencies": {
|
||||
"lodash.defaultsdeep": "^4.6.0"
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user