|
|
[app:appenlight]
|
|
|
use = egg:appenlight
|
|
|
reload_templates = true
|
|
|
debug_authorization = true
|
|
|
debug_notfound = true
|
|
|
debug_routematch = true
|
|
|
debug_templates = true
|
|
|
default_locale_name = en
|
|
|
sqlalchemy.url = postgresql://test:test@localhost/appenlight
|
|
|
sqlalchemy.pool_size = 10
|
|
|
sqlalchemy.max_overflow = 50
|
|
|
sqlalchemy.echo = false
|
|
|
jinja2.directories = appenlight:templates
|
|
|
jinja2.filters = nl2br = appenlight.lib.jinja2_filters.nl2br
|
|
|
|
|
|
|
|
|
pyramid.includes = pyramid_debugtoolbar
|
|
|
|
|
|
debugtoolbar.panels =
|
|
|
pyramid_debugtoolbar.panels.versions.VersionDebugPanel
|
|
|
pyramid_debugtoolbar.panels.settings.SettingsDebugPanel
|
|
|
pyramid_debugtoolbar.panels.headers.HeaderDebugPanel
|
|
|
pyramid_debugtoolbar.panels.renderings.RenderingsDebugPanel
|
|
|
pyramid_debugtoolbar.panels.logger.LoggingPanel
|
|
|
pyramid_debugtoolbar.panels.performance.PerformanceDebugPanel
|
|
|
pyramid_debugtoolbar.panels.routes.RoutesDebugPanel
|
|
|
pyramid_debugtoolbar.panels.sqla.SQLADebugPanel
|
|
|
pyramid_debugtoolbar.panels.tweens.TweensDebugPanel
|
|
|
pyramid_debugtoolbar.panels.introspection.IntrospectionDebugPanel
|
|
|
|
|
|
appenlight.includes =
|
|
|
|
|
|
# encryption
|
|
|
encryption_secret = oEOikr_T98wTh_xLH3w8Se3kmbgAQYSM4poZvPosya0=
|
|
|
|
|
|
#redis
|
|
|
redis.url = redis://localhost:6379/0
|
|
|
redis.redlock.url = redis://localhost:6379/3
|
|
|
|
|
|
#elasticsearch
|
|
|
elasticsearch.nodes = http://127.0.0.1:9200
|
|
|
|
|
|
#dirs
|
|
|
webassets.dir = %(here)s/webassets/
|
|
|
|
|
|
#authtkt
|
|
|
authtkt.secure = false
|
|
|
authtkt.secret = SECRET
|
|
|
# session settings
|
|
|
redis.sessions.secret = SECRET
|
|
|
redis.sessions.timeout = 86400
|
|
|
|
|
|
# session cookie settings
|
|
|
redis.sessions.cookie_name = appenlight
|
|
|
redis.sessions.cookie_max_age = 2592000
|
|
|
redis.sessions.cookie_path = /
|
|
|
redis.sessions.cookie_domain =
|
|
|
redis.sessions.cookie_secure = False
|
|
|
redis.sessions.cookie_httponly = False
|
|
|
redis.sessions.cookie_on_exception = True
|
|
|
redis.sessions.prefix = appenlight:session:
|
|
|
|
|
|
|
|
|
#cache
|
|
|
cache.regions = default_term, second, short_term, long_term
|
|
|
cache.type = ext:memcached
|
|
|
cache.url = 127.0.0.1:11211
|
|
|
cache.lock_dir = %(here)s/data/cache/lock
|
|
|
cache.second.expire = 1
|
|
|
cache.short_term.expire = 60
|
|
|
cache.default_term.expire = 300
|
|
|
|
|
|
#mailing
|
|
|
mailing.app_url = http://localhost:6543
|
|
|
mailing.from_name = App Enlight LOCAL
|
|
|
mailing.from_email = no-reply@appenlight.local
|
|
|
|
|
|
|
|
|
###
|
|
|
# Authomatic configuration
|
|
|
###
|
|
|
|
|
|
authomatic.secret = SECRET
|
|
|
authomatic.pr.facebook.app_id =
|
|
|
authomatic.pr.facebook.secret =
|
|
|
authomatic.pr.twitter.key =
|
|
|
authomatic.pr.twitter.secret =
|
|
|
authomatic.pr.google.key =
|
|
|
authomatic.pr.google.secret =
|
|
|
authomatic.pr.github.key =
|
|
|
authomatic.pr.github.secret =
|
|
|
authomatic.pr.github.scope = repo, public_repo, user:email
|
|
|
authomatic.pr.bitbucket.key =
|
|
|
authomatic.pr.bitbucket.secret =
|
|
|
|
|
|
#ziggurat
|
|
|
ziggurat_foundations.model_locations.User = appenlight.models.user:User
|
|
|
ziggurat_foundations.sign_in.username_key = sign_in_user_name
|
|
|
ziggurat_foundations.sign_in.password_key = sign_in_user_password
|
|
|
ziggurat_foundations.sign_in.came_from_key = came_from
|
|
|
|
|
|
#cometd
|
|
|
cometd.server = http://127.0.0.1:8088/
|
|
|
cometd.secret = secret
|
|
|
cometd.ws_url = http://127.0.0.1:8088/
|
|
|
|
|
|
|
|
|
# for celery
|
|
|
appenlight.api_key =
|
|
|
appenlight.transport_config = http://127.0.0.1:6543?threaded=1
|
|
|
appenlight.public_api_key =
|
|
|
|
|
|
celery.broker_type = redis
|
|
|
celery.broker_url = redis://localhost:6379/3
|
|
|
celery.concurrency = 4
|
|
|
celery.timezone = UTC
|
|
|
|
|
|
|
|
|
[filter:paste_prefix]
|
|
|
use = egg:PasteDeploy#prefix
|
|
|
|
|
|
|
|
|
[filter:appenlight_client]
|
|
|
use = egg:appenlight_client
|
|
|
appenlight.api_key =
|
|
|
appenlight.transport_config = http://127.0.0.1:6543?threaded=1
|
|
|
appenlight.report_local_vars = true
|
|
|
appenlight.report_404 = true
|
|
|
appenlight.logging.level = DEBUG
|
|
|
appenlight.timing.dbapi2_psycopg2 = 0.3
|
|
|
|
|
|
|
|
|
[pipeline:main]
|
|
|
pipeline =
|
|
|
paste_prefix
|
|
|
appenlight_client
|
|
|
appenlight
|
|
|
|
|
|
|
|
|
|
|
|
[server:main]
|
|
|
use = egg:waitress
|
|
|
host = 0.0.0.0
|
|
|
port = 6543
|
|
|
|
|
|
[server:main_prod]
|
|
|
use = egg:gunicorn#main
|
|
|
host = 0.0.0.0:6543, unix:/tmp/appenlight.sock
|
|
|
workers = 6
|
|
|
timeout = 90
|
|
|
#max_requests = 1000
|
|
|
|
|
|
|
|
|
# Begin logging configuration
|
|
|
|
|
|
[loggers]
|
|
|
keys = root, appenlight, sqlalchemy, elasticsearch, elasticsearch_trace
|
|
|
|
|
|
[handlers]
|
|
|
keys = console
|
|
|
|
|
|
[formatters]
|
|
|
keys = generic, json
|
|
|
|
|
|
[logger_root]
|
|
|
level = INFO
|
|
|
handlers = console
|
|
|
|
|
|
[logger_appenlight]
|
|
|
level = INFO
|
|
|
handlers =
|
|
|
qualname = appenlight
|
|
|
|
|
|
[logger_elasticsearch]
|
|
|
level = WARN
|
|
|
handlers =
|
|
|
qualname = elasticsearch
|
|
|
|
|
|
[logger_elasticsearch_trace]
|
|
|
level = WARN
|
|
|
handlers =
|
|
|
qualname = elasticsearch.trace
|
|
|
|
|
|
[logger_sqlalchemy]
|
|
|
level = WARN
|
|
|
handlers =
|
|
|
qualname = sqlalchemy.engine
|
|
|
# "level = INFO" logs SQL queries.
|
|
|
# "level = DEBUG" logs SQL queries and results.
|
|
|
# "level = WARN" logs neither. (Recommended for production systems.)
|
|
|
|
|
|
[handler_console]
|
|
|
class = StreamHandler
|
|
|
args = (sys.stderr,)
|
|
|
level = NOTSET
|
|
|
formatter = json
|
|
|
|
|
|
[formatter_generic]
|
|
|
format = %(asctime)s %(levelname)-5.5s [%(name)s][%(threadName)s] %(message)s
|
|
|
|
|
|
# json string will land as "message" key of format string
|
|
|
[formatter_json]
|
|
|
class=appenlight.lib.logging.JSONFormatter
|
|
|
format = %(asctime)s %(levelname)-5.5s [%(name)s:%(lineno)s][%(threadName)s] %(message)s
|
|
|
|
|
|
# End logging configuration
|
|
|
|