0.2.8 • Published 8 years ago

encrypt-env v0.2.8

Weekly downloads
3
License
ISC
Repository
github
Last release
8 years ago

encrypt-env

Share encrypted environment files through Git

Basic usage as CLI tool

encrypt-env looks for a file named .encrypt-env.json which is a map of your different environments and their encryption.

{
	"PRODUCTION": {
		"aesKey": "~/.ssh/foo.prod.aes",
		"envFile": ".prod.env"
	},
	"DEVELOPMENT": {
		"aesKey": "~/.ssh/foo.dev.aes",
		"envFile": ".dev.env"
	},
	"STAGING": {
		"aesKey": "~/.ssh/foo.dev.aes",
		"envFile": ".staging.env"
	}
}

You can generate AES keys from the CLI

encrypt-env generate

You can now use the encrypt-env CLI to encrypt and decrypt you environment files:

# decrypt .dev.env.enc and write result to .dev.env
encrypt-env --decrypt --env DEVELOPMENT --write

# decrypt .dev.env.enc and print to console (don't write)
encrypt-env --decrypt --env DEVELOPMENT

# encrypt .dev.env and write result to .dev.env.enc
encrypt-env --env DEVELOPMENT --write

# encrypt .dev.env and print to console (don't write)
encrypt-env --env DEVELOPMENT

Add these commands to your package.json or CLI build tool to automatically decrypt your environment at teste / deploy time

In code usage

You can also use encrypt-env directly in code without having your AES keys on the filesystem.

var encryptEnv = require('encrypt-env')('DEVELOPMENT', {
  "DEVELOPMENT": '6MTPfGGW3GbiW1JG5F1lP9T723MMleRJU'
});

// where encryptedEnv is an encrypted string
var decryptedEnv = encryptEnv.decryptEnv(false, encryptedEnv);
0.2.8

8 years ago

0.2.7

8 years ago

0.2.6

8 years ago

0.2.5

8 years ago

0.2.4

8 years ago

0.2.3

8 years ago

0.2.2

8 years ago

0.2.1

8 years ago

0.2.0

8 years ago

0.1.0

8 years ago