Comparing version 0.1.1 to 0.2.0
31
index.js
var path = require("path"); | ||
var _ = require("underscore"); | ||
var EPA = require("./lib/epa"); | ||
var EPA = require("./epa"); | ||
var extend = require("./extend"); | ||
function buildEnv(){ | ||
var configFolder = path.resolve(process.cwd(), "env"); | ||
var environmentName = process.env.NODE_ENV || "development"; | ||
var configFolder = path.resolve(process.cwd(), "env"); | ||
var epa = new EPA({ | ||
folder: configFolder, | ||
environment: environmentName, | ||
systemEnv: process.env | ||
}); | ||
var epa = new EPA({ | ||
folder: configFolder | ||
}); | ||
var env = epa.buildEnv(); | ||
return env; | ||
} | ||
var env = epa.buildEnv(); | ||
module.exports = extend({EPA: EPA}, env); | ||
module.exports = { | ||
EPA: EPA, | ||
getEnvironment: function(){ | ||
if (!this._env){ | ||
this._env = buildEnv(); | ||
} | ||
return this._env; | ||
} | ||
}; |
{ | ||
"name": "epa", | ||
"version": "0.1.1", | ||
"version": "0.2.0", | ||
"description": "simple environment configuration using json files", | ||
"private": false, | ||
"keywords": "environment, config, configuration, production, development, staging, dev, json", | ||
"keywords": [ | ||
"environment", | ||
"configuration", | ||
"settings", | ||
"dev", | ||
"development", | ||
"production", | ||
"staging" | ||
], | ||
"main": "./index.js", | ||
"homepage": "https://github.com/derickbailey/epa", | ||
"bugs": { | ||
"url" : "http://github.com/derickbailey/epa/issues" | ||
"bugs": { | ||
"url": "http://github.com/derickbailey/epa/issues" | ||
}, | ||
@@ -18,7 +26,12 @@ "license": "MIT", | ||
}, | ||
"repository" : { | ||
"type": "git", | ||
"repository": { | ||
"type": "git", | ||
"url": "http://github.com/derickbailey/epa.git" | ||
} | ||
}, | ||
"dependencies": { | ||
"grunt-contrib-jshint": "^0.10.0", | ||
"grunt-jasmine-node": "^0.2.1", | ||
"underscore": "^1.7.0" | ||
}, | ||
"devDependencies": {} | ||
} | ||
@@ -25,3 +25,3 @@ # EPA | ||
`var epa = require("epa")` | ||
`var epa = require("epa").getEnvironment();` | ||
@@ -47,6 +47,42 @@ **4) Set the NODE_ENV to the right environment when running your app** | ||
```js | ||
var epa = require("epa"); | ||
var epa = require("epa").getEnvironment(); | ||
var foo = epa.get("foo"); | ||
console.log(epa.foo); | ||
``` | ||
The same works for environment variables. For example, the current | ||
"NODE\_ENV" environment variable can be retrieved using the same | ||
`get` method: | ||
```js | ||
var epa = require("epa").getEnvironment(); | ||
var env = epa.get("NODE_ENV"); | ||
console.log(env); | ||
``` | ||
## Your Own EPA Instance | ||
The `getEnvironment` method from the EPA object returns a cached, and | ||
default instance of the EPA environment configuration. However, you can | ||
create your own instances whenever you want to, using the `EPA` class | ||
that comes with the `EPA` namespace. | ||
```js | ||
var EPA = require("epa").EPA; | ||
var myEPA = new EPA({ | ||
folder: "my-config", | ||
systemEnv: process.env, | ||
environment: "dev" | ||
}); | ||
``` | ||
The `folder` option tells the EPA system what the root folder of | ||
your environment configurations is. This parameter is combined with | ||
the `environment` option to find the correct `config.json` file. | ||
The `systemEnv` option tells the EPA system what "system" environment | ||
variables to use. You should specify `process.env` unless you have a | ||
good reason not to. | ||
## Legal Mumbo Jumbo | ||
@@ -53,0 +89,0 @@ |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 2 instances in 1 package
9908
17
232
91
3
5
1
+ Addedgrunt-contrib-jshint@^0.10.0
+ Addedgrunt-jasmine-node@^0.2.1
+ Addedunderscore@^1.7.0
+ Added@xmldom/xmldom@0.8.10(transitive)
+ Addedabbrev@1.1.1(transitive)
+ Addedargparse@0.1.16(transitive)
+ Addedasync@0.1.22(transitive)
+ Addedcli@0.6.6(transitive)
+ Addedcoffee-script@1.3.31.6.3(transitive)
+ Addedcolors@0.6.2(transitive)
+ Addedconsole-browserify@1.1.0(transitive)
+ Addedcore-util-is@1.0.3(transitive)
+ Addeddate-now@0.1.4(transitive)
+ Addeddateformat@1.0.2-1.2.3(transitive)
+ Addeddom-serializer@0.2.2(transitive)
+ Addeddomelementtype@1.3.12.3.0(transitive)
+ Addeddomhandler@2.3.0(transitive)
+ Addeddomutils@1.5.1(transitive)
+ Addedentities@1.0.02.2.0(transitive)
+ Addedesprima@1.0.4(transitive)
+ Addedeventemitter2@0.4.14(transitive)
+ Addedexit@0.1.2(transitive)
+ Addedfileset@0.1.8(transitive)
+ Addedfindup-sync@0.1.3(transitive)
+ Addedgaze@0.3.4(transitive)
+ Addedgetobject@0.1.0(transitive)
+ Addedglob@3.1.213.2.11(transitive)
+ Addedgraceful-fs@1.2.3(transitive)
+ Addedgrunt@0.4.5(transitive)
+ Addedgrunt-contrib-jshint@0.10.0(transitive)
+ Addedgrunt-jasmine-node@0.2.1(transitive)
+ Addedgrunt-legacy-log@0.1.3(transitive)
+ Addedgrunt-legacy-log-utils@0.1.1(transitive)
+ Addedgrunt-legacy-util@0.2.0(transitive)
+ Addedhooker@0.2.3(transitive)
+ Addedhtmlparser2@3.8.3(transitive)
+ Addediconv-lite@0.2.11(transitive)
+ Addedinherits@1.0.22.0.4(transitive)
+ Addedisarray@0.0.1(transitive)
+ Addedjasmine-node@1.7.1(transitive)
+ Addedjasmine-reporters@2.5.2(transitive)
+ Addedjs-yaml@2.0.5(transitive)
+ Addedjshint@2.5.11(transitive)
+ Addedlodash@0.9.22.4.2(transitive)
+ Addedlru-cache@2.7.3(transitive)
+ Addedminimatch@0.2.140.3.01.0.0(transitive)
+ Addedmkdirp@0.3.51.0.4(transitive)
+ Addednopt@1.0.10(transitive)
+ Addedreadable-stream@1.1.14(transitive)
+ Addedrequirejs@2.3.7(transitive)
+ Addedrimraf@2.2.8(transitive)
+ Addedshelljs@0.3.0(transitive)
+ Addedsigmund@1.0.1(transitive)
+ Addedstring_decoder@0.10.31(transitive)
+ Addedstrip-json-comments@1.0.4(transitive)
+ Addedunderscore@1.13.71.6.01.7.0(transitive)
+ Addedunderscore.string@2.2.12.3.32.4.0(transitive)
+ Addedwalkdir@0.4.1(transitive)
+ Addedwhich@1.0.9(transitive)