0.2.3 • Published 6 years ago

config-multipaas v0.2.3

Weekly downloads
281
License
MIT
Repository
github
Last release
6 years ago

#config-multipaas npm version Build Status

CONFIG-CHAIN W/ CLOUD-ENV DEFAULTS!

!!AUTOCONFIGURE JS CODE FOR USE ON ANY PLATFORM NODE!!

MultiPaaS

Config-multiPaaS is a config-chain wrapper that includes autoconfiguration support for all major cloud hosting platforms and deployment targets:

It works by checking the system environment for known configuration strings, normalizing the results into a consistent list.

npm stats

Dependency Check monthly downloads license

Setup

Configuration objects generated by config-multipaas are valid instances of config-chain, making it easy to extend, or to use as drop-in replacement:

  //npm install --save config-multipaas
  var cc = require('config-multipaas')

  // Merge multiple layers of configuration down into a single set:
  var config_overrides = { foo: "bar" } // override values should be provided first
  var config = cc(config_overrides)     // cloud configs will be automatically resolved
                 .add({ PORT: 8000 })   // low-priority defaults should be appended last

The above example will produce a default PORT value of 8000 when autoconfiguration strings are unavailable - as in local development environments. On all platforms, foo will be resolved as "bar".

See the config-chain README for advanced usage notes, and the below list of configuration strings for more information about cloud-provided configs.

Listen up

Make sure to pass config.get('PORT') and config.get('IP') to your app's listen function:

app.listen(config.get('PORT'), config.get('IP'), function () {
  console.log("Listening on "+config.get('IP')+", port "+config.get('PORT'))
});

If host-provided configs are not found, local development defaults are returned - allowing you to configure once, and run anywhere.

Configuration Strings

Consistent, vendor-neutral, server configuration strings provoded by cloud-env:

config.get(KEYNAME)DEFAULTprocess.env.SOURCE_VARS
IP0.0.0.0OPENSHIFT_NODEJS_IP, BIND_IP
PORT8080OPENSHIFT_NODEJS_PORT, PORT
HOSTNAMElocalhostOPENSHIFT_APP_DNS, HOSTNAME
APP_NAMEAPP_NAMEOPENSHIFT_APP_NAME, APP_NAME
MONGODB_DB_URLmongodb://127.0.0.1:27017OPENSHIFT_MONGODB_DB_URL, MONGODB_DB_URL
POSTGRESQL_DB_URLpostgresql://127.0.0.1:5432OPENSHIFT_POSTGRESQL_DB_URL, POSTGRESQL_DB_URL
MYSQL_DB_URLmysql://127.0.0.1:3306OPENSHIFT_MYSQL_DB_URL, MYSQL_DB_URL
0.2.3

6 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.0

9 years ago

0.0.6

9 years ago

0.0.5

10 years ago

0.0.4

10 years ago

0.0.3

10 years ago

0.0.2

10 years ago

0.0.1

10 years ago