itacate

Configuration module from flask, for the rest of the world


License
BSD-3-Clause
Install
pip install itacate==1.0.3

Documentation

Itacate

https://travis-ci.org/categulario/itacate.svg?branch=master

Itacatl: Provisi贸n de comida que se lleva para un viaje o un paseo, o que ha sobrado de una fiesta y se da a algunos invitados.

El m贸dulo de configuraci贸n de flask para el resto del mundo, por que me gusta c贸mo funciona. Escribe tus configuraciones en archivos python e imp贸rtalas seg煤n el entorno, sobreescribi茅ndolas en cascada.

The config module from flask for the rest of the world, just because I like how it works. Write your config files in normal python files and import them depending on environment variables. Overwrite them in cascade.

C贸mo usar / Usage

# settings.py
DEBUG = False
BE_MAGIC = True
SECREY_KEY = ''
FIZ_BOZ = 15
STORAGE_DIR = 'media'
DB_NAME = 'mysql'
# settings_develop.py
DEBUG = True
# settings.json
{
   "FIZ_BOZ": 10
}
# module.py
from itacate import Config
import os

class MyObject:
   STORAGE_DIR = '/var/www/media'

DB_NAME = 'postgres'

config = Config(os.path.dirname(os.path.realpath(__file__)))
config.from_pyfile('settings.py')
config.from_envvar('MY_APP_SETTINGS', silent=False) # export MY_APP_SETTINGS=/path/to/settings_develop.py
config.from_mapping({
   'SECREY_KEY': 'lalala',
})
config.from_json('settings.json')
config.from_object(MyObject)
config.from_object(__name__) # from this same module!

assert config.BE_MAGIC == True
assert config.DEBUG == True
assert config.FIZ_BOZ == 10
assert config.SECREY_KEY == 'lalala'
assert config.STORAGE_DIR == '/var/www/media'
assert config.DB_NAME == 'postgres'