dotenv-filter-cli

Reverse of dotenv; filter env variables and output them in the dotenv format


Keywords
env, dotenv
License
ISC
Install
npm install dotenv-filter-cli@0.1.1

Documentation

dotenv-filter-cli

This is a very small CLI tool to filter environment variables from process.env.

You can kinda see this as the reverse of dotenv; it processes all your current env variables, allows you to filter on them and outputs it as if it were a dotenv file.

My specific use case is that when I run Zeit Now in a CI tool like Travis, I want to give it only the environment variables that start with BACKEND_, like BACKEND_SECRET. The only alternative I saw is to pass every environment variable with, -e BACKEND_SECRET etc. That is not maintainable when you have 10+ variables.

Install with npm i -g dotenv-filter-cli

Usages

$ dotenv-filter --prefix=BACKEND_
BACKEND_SECRET="xxx"
BACKEND_APP_URL="https://example.com"

Or save to a file directly:

$ dotenv-filter --prefix=BACKEND_ > .env

Or if your naming scheme uses consistent suffixes instead of prefixes:

$ dotenv-filter --suffix=_APP
SECRET_APP="xxx"

Or maybe you want to filter on multiple suffixes:

$ dotenv-filter --suffix=_APP --suffix=MAIL
SECRET_APP="xxx"
FROM_MAIL="kees@example.com"

Example usage with Zeit Now (note: this is not specific in any way to Zeit):

$ dotenv-filter --prefix=BACKEND > .env.now
$ now --dotenv .env.now