/dotenver

Automatically generate .env files from .env.example template files

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Python DotEnver

A Python app to generate dotenv (.env) files from templates.

Features

  • Automatic .env file generation from .env.example files
  • Useful for CI or Docker deployments
  • Uses Jinja2 as rendering engine
  • Uses Faker for value generation

Quickstart

  1. Install Python DotEnver

    $ pip install dotenver
  2. Create a .env.example following this example

    # Full line comments will be kept
    
    # Simple usage
    NAME= ## dotenver:first_name
    
    # Pass parameters to fakers
    ENABLED= ## dotenver:boolean(chance_of_getting_true=50)
    
    # Name your values
    MYSQL_PASSWORD= ## dotenver:password:my_password(length=20)
    # And get the same value again, when the name is repeated.
    DB_PASSWORD= ## dotenver:password:my_password()
    
    # Output your values within double or single quotes
    DOUBLE_QUOTED= ## dotenver:last_name(quotes='"')
    SINGLE_QUOTED= ## dotenver:last_name(quotes="'")
    
    # Literal values are possible
    STATIC_VARIABLE=static value
    
    # export syntax can be used
    export EXPORTED_VARIABLE=exported
  3. Run python DotEnver form the CLI

    $ dotenver -r
  4. You now have a new .env file ready to use.

  5. For more usage options run

    $ dotenver -h

Docker

A Docker image is provided. To use it, mount your source code to /var/lib/dotenver/ and run the container.

$ docker run -ti --rm -v "${PWD}:/var/lib/dotenver/" jmfederico/dotenver