API documentation

Module contents

Support for working with different sources of configuration values.

class DefaultSettings(schema.Settings):
SECRET_KEY = schema.Value(str) DEBUG = schema.Value(types.boolean, default=False) DB_URL = schema.Value(types.sqlalchemy_url) LOCALES = schema.Value(types.list(str))
settings = DefaultSettings(
providers.DictConfig(os.environ, prefix=’MYAPP_’))
coolfig.computed_value(func)[source]
class coolfig.DictConfig(conf_dict, prefix='')[source]

Bases: coolfig.providers.ConfigurationProvider

Loads configuration values from the passed dictionary.

get(key)[source]
iterprefixed(prefix)[source]
class coolfig.Dictionary(spec)[source]

Bases: coolfig.schema.ValueBase

class coolfig.EnvDirConfig(base_path, prefix='')[source]

Bases: coolfig.providers.ConfigurationProvider

get(key)[source]
iterprefixed(prefix)[source]
coolfig.load_django_settings(provider, static_config, base=<class 'coolfig.django.BaseDjangoSettings'>, apps=None, name=None)[source]
class coolfig.Settings(config_provider)[source]

Bases: coolfig.schema.SettingsBase

classmethod merge(*others)[source]

Merge the others schema into this instance.

The values will all be read from the provider of the original object.

class coolfig.Value(type, default=<object object>, key=None)[source]

Bases: coolfig.schema.ValueBase

Submodules

coolfig.django module

class coolfig.django.BaseDjangoSettings(config_provider)[source]

Bases: coolfig.schema.Settings

ALLOWED_HOSTS
CACHES
DATABASES
DEBUG
LANGUAGE_CODE
SECRET_KEY
STATIC_URL
TIME_ZONE
USE_I18N
USE_L10N
USE_TZ
install(name=None)[source]
load_apps(apps=None)[source]
coolfig.django.get_app_settings_path(app_path)[source]
coolfig.django.load_django_settings(provider, static_config, base=<class 'coolfig.django.BaseDjangoSettings'>, apps=None, name=None)[source]
coolfig.django.make_django_settings(static_config, base=<class 'coolfig.django.BaseDjangoSettings'>)[source]

coolfig.providers module

class coolfig.providers.ConfigurationProvider[source]

Bases: object

get(key)[source]
iterprefixed(prefix)[source]
class coolfig.providers.DictConfig(conf_dict, prefix='')[source]

Bases: coolfig.providers.ConfigurationProvider

Loads configuration values from the passed dictionary.

get(key)[source]
iterprefixed(prefix)[source]
class coolfig.providers.EnvDirConfig(base_path, prefix='')[source]

Bases: coolfig.providers.ConfigurationProvider

get(key)[source]
iterprefixed(prefix)[source]
class coolfig.providers.FallbackProvider(providers)[source]

Bases: coolfig.providers.ConfigurationProvider

get(key)[source]
iterprefixed(prefix)[source]

coolfig.schema module

class coolfig.schema.BoundValue(cls, name, value)[source]

Bases: object

class coolfig.schema.ComputedValue(callable, *args, **kwargs)[source]

Bases: coolfig.schema.ValueBase

class coolfig.schema.DictValue(type, keytype=<type 'str'>, *args, **kwargs)[source]

Bases: coolfig.schema.Value

class coolfig.schema.Dictionary(spec)[source]

Bases: coolfig.schema.ValueBase

exception coolfig.schema.ImproperlyConfigured[source]

Bases: exceptions.Exception

Raised when e request for a configuration value cannot be fulfilled.

class coolfig.schema.Reference(key)[source]

Bases: object

class coolfig.schema.Settings(config_provider)[source]

Bases: coolfig.schema.SettingsBase

classmethod merge(*others)[source]

Merge the others schema into this instance.

The values will all be read from the provider of the original object.

class coolfig.schema.SettingsBase(config_provider)[source]

Bases: object

as_dict()[source]
items()[source]
keys()[source]
class coolfig.schema.SettingsMeta(name, bases, clsdict)[source]

Bases: type

class coolfig.schema.StaticValue(value)[source]

Bases: coolfig.schema.BoundValue

class coolfig.schema.Value(type, default=<object object>, key=None)[source]

Bases: coolfig.schema.ValueBase

class coolfig.schema.ValueBase[source]

Bases: object

coolfig.schema.bind_values(cls, clsdict)[source]
coolfig.schema.computed_value(func)[source]
coolfig.schema.ref

alias of coolfig.schema.Reference

coolfig.types module

Common types for settings classes.

class coolfig.types.LazyCallable(module_path, callable_path)[source]

Bases: object

func
coolfig.types.boolean(string)[source]
coolfig.types.dottedpath(string)[source]
coolfig.types.list(inner_type, sep=', ')[source]