Application configuration from environment variables made easy
Project description
environconfig allows you to use environment variables in Python with a declarative syntax.
A quick example:
from environconfig import EnvironConfig
from environconfig import StringVar, IntVar
class DBCfg(EnvironConfig):
"""Database configuration from the environment."""
HOSTNAME = StringVar(default='localhost')
PORT = IntVar(default=3306)
USERNAME = StringVar()
PASSWORD = StringVar()
CHARSET = StringVar(default='utf8mb4')
NAME = StringVar(default='mydatabase')
# Now you can start using it
connection = pymysql.connect(host=DBCfg.HOSTNAME,
user=DBCfg.USERNAME,
password=DBCfg.PASSWORD,
db=DBCfg.NAME,
charset=DBCfg.CHARSET,
cursorclass=pymysql.cursors.DictCursor)
You can check more examples in the examples directory.
Features
Built-in basic types: String, Bool, Int, Float…
Easy Customizable: CustomVar (just pass a callable to make the conversion)
No mocking necessary for testing: Just instantiate your config with a dictionary.
Easy build complex constructions with environment data: See MethodVar
Collaboration
We are always open to pull requests and accept new var types.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
environconfig-1.7.0.tar.gz
(4.2 kB
view details)
File details
Details for the file environconfig-1.7.0.tar.gz.
File metadata
- Download URL: environconfig-1.7.0.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
06c50d8a3a7e73404276ee5b47539f41d5490409edeba64c40ed748d2daeea20
|
|
| MD5 |
e31daecdc75acdcf6981492ee6d07164
|
|
| BLAKE2b-256 |
bdda311afb542162536d4cf19a0e85a5e9eb462f4a8f1dc898fefe9b5524fd8b
|