Skip to content

Get boolean values from environment variables in Python

License

Notifications You must be signed in to change notification settings

metabolize/env-flag

Repository files navigation

env-flag

version python versions license build coverage code style

Get boolean values from environment variables in Python.

from env_flag import env_flag

# When unset, default to `False`.
debug = not env_flag('PRODUCTION')

# When unset, use explicit default.
is_local = get_bool('IS_LOCAL', default=True)

Values are coerced as follows:

  • When the variable is unset, or set to the empty string, return default.

  • When the variable is set to a truthy value, return True. These are the truthy values:

    • 1
    • true, yes, on
  • When the variable is set to the anything else, return False. Example falsy values:

    • 0
    • no
  • Ignore case and leading/trailing whitespace.

Provides MyPy-compatible type annotations.

Development

./dev.py init
./dev.py test
./dev.py lint
./dev.py black

Contribute

Pull requests welcome!

Support

If you are having issues, please let us know.

Acknowledgements

This function was inspired by node-env-flag, the equivalent for Node.js. It was developed at Body Labs by Paul Melnikow and later open sourced. It was forked in 2019 by Paul Melnikow. Thanks to a repository and package transfer from Body Labs, the fork has been merged back into the original.

License

The project is licensed under the two-clause BSD license.

About

Get boolean values from environment variables in Python

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages