0.5.2 • Published 10 years ago

nsconfig v0.5.2

Weekly downloads
26
License
MIT
Repository
github
Last release
10 years ago

nsconfig NPM version Build Status Coveralls Status

Configuration options for netsuite-related packages.

Set up authentication and custom parameters environment-wise or project-wise.

Required

  • node.js 0.10+ or io.js 1+ or node.js 4+

Install Dependency Status devDependency Status

    npm install nsconfig

Usage

nsconfig( overrideParams : any , projectParams? : ParamsDef[] , noThrow? : boolean )

Reads configuration parameters from the following sources (overriding each parameter on the same order):

  • overrideParams argument;

  • Searches up to 5 levels above cwd for a nsconfig.json file

  • Searches for a ~/.ns/nsconfig.json (on windows ~ is X:/Users/<user>)

  • Environment variables found with the syntax NSCONF_<UPPERCASE_PARAMETER_NAME>. E.g. the email param can be forced to something else by exporting NSCONF_EMAIL=email@example.com.

When working with multiple netsuite environments you may override the file name nsconfig.json with e.g. nsconfig-myproject.json by either:

  • setting the conffile parameter;

  • setting the environment variable NSCONF or NSCONF_CONFFILE.

projectParams

Set additional parameters that your module may want to look up.

The default parameters are:

[
    {name: 'email', required: true},
    {name: 'password', required: true},
    {name: 'account', required: true},
    {name: 'realm', def: 'system.netsuite.com'},
    {name: 'role'}
]

Currently accepted options for each custom parameter are:

interface ParamsDef {
	name : string;
	required? : boolean; //throws an error if this parameter is not defined
	def? : boolean;      //defaults to this value if this parameter is not defined
}

passwords and passwordHash

Instead of setting the password key, you may set passwordHash with a base64 encoded password.

Or you may use one the following options in order to avoid storing the password directly into the project's nsconfig.json:

  • Set up the password as environment variable (NSCONF_PASSWORD)

  • Set the the password at ~/.ns/nsconfig.json

Example

Both configuration files below yield the same output:

var params = nsconfig()

yields

{
	"email": "email@suiteplus.com",
	"password": "*****",
	"account": "DDAA12321",
	"realm": "netsuite.com",
	"role": 3
}
0.5.2

10 years ago

0.5.1

10 years ago

0.5.0

10 years ago

0.4.1

10 years ago

0.4.0

10 years ago

0.3.2

10 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.0

10 years ago

0.1.0

10 years ago