multi-environment configuration manager
JavaScript
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
example
lib
.gitignore
README.md
package.json

README.md

About

Projenizi farklı ortamlarda farklı ayarlarla kullanmanızı sağlar.

Installation

npm install node-derby

Usage

Ayarları bir klasör içerisinde toplamalısınız. Bu klasör içerisinde ortam adı ile eş js dosyaları bulunmalı. Ayrıca genel ayarlar içinde default.js isminde bir dosya oluşturabilirsiniz. Ortam ayarları öntanımlı ayarları her zaman ezer.

settings/default.js

var Settings = {
    db : {
        host : 'localhost',
        dbname : 'test'
    }
};

module.exports = Settings;

settings/production.js

var Settings = {
    logfile : '/var/production.log',
    db : {
        username : 'production',
        password : '123456'
    }
};

module.exports = Settings;

settings/stage.js

var Settings = {
    logfile : '/var/stage.log',
    db : {
        username : 'stage',
        password : '123'
    }
};

module.exports = Settings;

app.js

if (!process.env.NODE_ENV)
{
    console.log("Please set 'NODE_ENV'.");
    process.exit();
}

var Derby = require('node-derby');
Derby.setup(process.env.NODE_ENV, __dirname + '/settings/');

console.log(Derby.data);

Modül ayar klasörünü istenmesi halinde dinleyebilir ve herhangi bir değişiklikte ayarları güncelleyebilir. Bu işlem için setup metoduna üçüncü parametre ile true değeri gönderilmelidir.

Derby.setup(process.env.NODE_ENV, __dirname + '/settings/', true);

Derby.on('change', function(){
    console.log('Settings changed');
    console.log(Derby.data);
});

Derby.extend({
    host : 'example.com'
});