/dump-env

A utility tool to create .env files

Primary LanguagePythonMIT LicenseMIT

A utility tool to create .env files

https://travis-ci.org/sobolevn/dump-env.svg?branch=master https://coveralls.io/repos/github/sobolevn/dump-env/badge.svg?branch=master https://readthedocs.org/projects/dump-env/badge/?version=latest

dump-env takes an .env.template file and some optional environmental variables to create a new .env file from these two sources.

Why?

Why do we need such a tool? Well, this tool is very helpful when your CI is building docker (or other) images. Previously we had some complex logic of encrypting and decrypting files, importing secret keys and so on. Now we can just create secret variables for our CI, add some prefix to it, and use dump-env to make our life easier.

Quickstart

This quick demo will demonstrate the main and the only purpose of dump-env:

$ dump-env --template=.env.template --prefix='SECRET_ENV_' > .env

This command will:

  1. take .env.template
  2. parse its keys and values
  3. read and all the variables from the environment starting with SECRET_ENV_
  4. remove this prefix
  5. mix it all together, where environment variables could override ones with the same name from the template
  6. sort keys in alphabetic order
  7. dump all the keys and values into the .env file

Installation

$ pip install dump-env

Creating secret variables in some CIs