Skip to content

🔀 Cross platform setting of environment scripts from a JSON file

License

Notifications You must be signed in to change notification settings

marcojakob/cross-env-file

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cross-env-file

Run scripts that set environment across platforms via JSON file.

This is a fork of cross-env that uses a JSON file to read the environment variables.


Installation

This module is distributed via [npm][npm] which is bundled with [node][node] and should be installed as one of your project's devDependencies:

npm install --save-dev cross-env-file

Usage

I use this in your npm scripts:

{
  "scripts": {
    "build": "cross-env-file -p ./.my-env.json webpack --config build/webpack.config.js"
  }
}

Ultimately, the command that is executed (using [cross-spawn][cross-spawn]) is:

webpack --config build/webpack.config.js

If no path is specified with -p the default name .env is used.

This is how a JSON environment file could look like:

{
  "base_url": "https://example.com",
  "aws": {
    "my_secret": "my-nested-secret"
  }
}

This will add the following environment variables to process.env:

base_url=https://example.com
aws_my_secret=my-nested-secret

cross-env-file vs cross-env-file-shell

The cross-env-file module exposes two bins: cross-env-file and cross-env-file-shell. The first one executes commands using [cross-spawn][cross-spawn], while the second one uses the shell option from Node's spawn.

The main use case for cross-env-file-shell is when you need an environment variable to be set across an entire inline shell script, rather than just one command.

For example, if you want to have the environment variable apply to several commands in series then you will need to wrap those in quotes and use cross-env-file-shell instead of cross-env-file.

LICENSE

MIT

About

🔀 Cross platform setting of environment scripts from a JSON file

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • JavaScript 100.0%