3.0.0 • Published 6 years ago

enwire v3.0.0

Weekly downloads
440
License
-
Repository
-
Last release
6 years ago

image

enwire

Tool for "re-wiring" environment variables.

  • Supports .json format
  • Supports .env format

Installation

npm install --global enwire

or use enwire without installation:

npx enwire
npx enwire --no-process -r HOME
cat package.json | npx enwire --pick name --no-process
cat .env | npx enwire --pick foo --no-process

dotenv-like Usage

Create a .env file with your env vars.

FOO=bar

Run your app with your env vars.

cat .env | enwire node app.js

Usage

Print all env vars.

enwire

Print selected env vars.

enwire --no-process --rewire HOME
# {"HOME": "..."}

Export in env var format.

enwire --no-process --rewire HOME --format env
# HOME="..."

Rewire env vars.

enwire --no-process --rewire HOME:TROLOLO
# {"TROLOLO": "..."}

Pass string as an env var.

echo Hello | enwire --raw --no-process
# {"ENWIRE": "Hello"}

Set custom name for string variable.

echo Hello | enwire --raw --no-process --name HELLO
# {"HELLO": "Hello"}

Populate env vars from JSON.

echo '{"db": "Test"}' | enwire --no-process
# {"db": "Test"}

Rewire JSON env vars.

echo '{"db": "Test"}' | enwire --no-process --rewire db:PGDATABASE --delete db
# {"PGDATABASE": "Test"}

Print project name.

cat package.json | enwire --no-process --pick name
# {"name": "enwire"}

Rewire nested keys from JSON.

cat package.json | enwire --no-process --no-merge --rewire scripts.test:TEST_CMD
# {"TEST_CMD": "./test.sh"}

Pass project name to printenv NAME script.

cat package.json | enwire --rewire name:NAME -- printenv NAME
# enwire

Pass env vars to yarn deploy script.

enwire --rewire AWS_PROFILE_PROD:AWS_PROFILE -- yarn deploy

Rewire environment variables.

db=Test enwire --rewire db:PGDATABASE -- printenv PGDATABASE
# Test

Evaluate arguments as JavaScript template strings.

HELLO=Hello enwire --eval -- echo "\${HELLO}, \${USER + '\!'}"
# Hello, user!

Prompt user to enter env var in console.

enwire --prompt TEST -- printenv TEST

Options

npx enwire --help

  • --delete, -d environment variable to delete.
  • --eval, -e evaluate CLI argumens as JS template strings.
  • --import, -i import and merge extra .json and .env files into process env
  • --prompt, -p prompt user to input variable in console if not set.
  • --rewire, -r from-to mapping of environment variable, e.g. --rewire db:PGDATABASE.
  • --delete-rewired if specified, rewired environment variables will be deleted.
  • --format by default exports in JSON format, --format=env can be set to export in env var format.
  • --no-process if specified, process environment variables will not be included.
  • --no-merge don't merge JSON from STDIN into process.env.
  • --pick specifies which keys to pick from JSON object provided through STDIN.
  • --help, -h show usage info.
  • --version, -v show enwire version.
3.0.0

6 years ago

2.5.0

6 years ago

2.4.1

6 years ago

2.4.0

6 years ago

2.3.0

6 years ago

2.2.0

6 years ago

2.1.1

6 years ago

2.1.0

6 years ago

2.0.0

6 years ago

1.3.0

6 years ago

1.2.0

6 years ago

1.1.0

6 years ago

1.0.0

6 years ago