0.1.5 • Published 8 years ago
init-node-env v0.1.5
init-node-env
- Initialize a few essential initialization to the node app to support multi-environment
.envfiles.
use
install
# if you use `yarn`
yarn global add init-node-env
# if you use `npm`
npm install -g init-node-envfrom the root of the project you'd like to initialize
init-node-env $PWDabout
1. environment types
local- for seat-specific environments.
test- for integration/unit tests environments.
develop- for remotely deployed servers to share the development servers among the internal developers.
master- for QAing and staging before production.
production- for production release to be used by real users.
2. encrypted and decrypted
- For security, we're encrypting each
.envfiles using aes-256-cbc. - When using the
.envfiles, we decypt them. The passwords to decrypt environments should be shared amongst the authorized team members safely.
3. filenames
.env- has the highest precendences to use this environment.
- NOT intended to be modified directly; this file must be the derived product during the build (e.g. by Jenkins build server).
.env.(local|test|develop|master|production).(encrypted|decrypted)
4. husky hook
- triggers automatic encryption and rename of the files from
.env.(local|test|develop|master|production).decryptedto.env.(local|test|develop|master|production).encrypted.
5. .gitignore
- must include
.env.*.decryptedand.envas these files may contain sensitive data.
TODO
- validator in the
precommitifinit-node-appis installed correctly. - improve README.md with why, how