183 строки
5.5 KiB
INI
183 строки
5.5 KiB
INI
#
|
|
# linkdrop - Pylons development environment configuration
|
|
#
|
|
# The %(here)s variable will be replaced with the parent directory of this file
|
|
#
|
|
[DEFAULT]
|
|
# debug = true
|
|
# Uncomment and replace with the address which should receive any error reports
|
|
#email_to = you@yourdomain.com
|
|
smtp_server = localhost
|
|
error_email_from = paste@localhost
|
|
|
|
# add bitly info then change test_shortener to no
|
|
test_shortener = yes
|
|
bitly.userid = linkdrop
|
|
bitly.key = R_9d8dc7f30887c45eb7b3719d71251006
|
|
|
|
oauth.twitter.com.consumer_key = 2r1qbed58DAaNMe142msTg
|
|
oauth.twitter.com.consumer_secret = prh6A961516mJ3XEjd7eERsGxuVZqycrBB6lV7LQ
|
|
oauth.twitter.com.request = https://twitter.com/oauth/request_token
|
|
oauth.twitter.com.access = https://twitter.com/oauth/access_token
|
|
oauth.twitter.com.authorize = https://twitter.com/oauth/authenticate
|
|
|
|
# This is a 'raindrop' app currently owned by markh. By necessity it is
|
|
# configured to use a redirect URL back to the default host and port specified
|
|
# below for this server.
|
|
oauth.facebook.com.app_id = 158102624846
|
|
oauth.facebook.com.app_secret = 4203f7f23803f405e06509ec4d4b9729
|
|
oauth.facebook.com.scope = publish_stream,offline_access
|
|
oauth.facebook.com.authorize = https://graph.facebook.com/oauth/authorize
|
|
oauth.facebook.com.access = https://graph.facebook.com/oauth/access_token
|
|
|
|
# XXX This will not work without registering a domain! See README
|
|
oauth.google.com.consumer_key = anonymous
|
|
oauth.google.com.consumer_secret = anonymous
|
|
oauth.google.com.scope = https://mail.google.com/ http://www.google.com/m8/feeds/
|
|
|
|
# Register with Yahoo! at https://developer.apps.yahoo.com/projects
|
|
# Yahoo scope is embeded in the consumer_key and is selected at registration time
|
|
# You will need to setup an application with Yahoo on a domain where you can
|
|
# upload an html file in order to verify the application. once verified,
|
|
# also set verified = 1
|
|
oauth.yahoo.com.consumer_key = FILL_ME_IN
|
|
oauth.yahoo.com.consumer_secret = FILL_ME_IN
|
|
oauth.yahoo.com.app_id = FILL_ME_IN
|
|
# set to true if you have completed domain verification with Yahoo
|
|
oauth.yahoo.com.verified = 0
|
|
|
|
[server:main]
|
|
use = egg:Paste#http
|
|
host = 127.0.0.1
|
|
port = 5000
|
|
|
|
# how to profile middleware configured here
|
|
# 1. uncomment the following section
|
|
# 2. rename filter-app:main for beaker to filter-app:sess
|
|
[filter-app:main]
|
|
use = egg:middlewares#profiler
|
|
# XXX a better location mechanism should be used
|
|
# where to save profile data
|
|
#dir = %(here)s/profile
|
|
# type = line or call, line profiling requires an additional module from enthought
|
|
# to use line profiling, easy_install line_profiler
|
|
# then you muse decorate a function to profile with @profile, it must be the
|
|
# last decorator before the function definition. to say the least, call profiling
|
|
# is much easier
|
|
type = line
|
|
# not used with line profiler, sort var is from cProfile
|
|
# sort = time
|
|
# run a contextual profile
|
|
builtin = 1
|
|
# dump to stderr
|
|
pprint = 1
|
|
# convert to cachegrind (not used with line profiler)
|
|
# grind = 1
|
|
|
|
next = sess
|
|
|
|
[filter-app:sess]
|
|
use = egg:Beaker#beaker_session
|
|
next = csrf
|
|
beaker.session.key = linkdrop
|
|
beaker.session.secret = secret
|
|
|
|
# XXX file sessions are slow, should change to memcached or database. be sure
|
|
# to set lock_dir below if using memcached
|
|
|
|
beaker.session.type = memory
|
|
#beaker.session.type = file
|
|
#beaker.session.type = ext:memcached
|
|
#beaker.session.url = 127.0.0.1:11211
|
|
#beaker.session.type = ext:database
|
|
#beaker.session.url = mysql+mysqldb://linkdrop:linkdrop@localhost/linkdrop
|
|
|
|
# If you'd like to fine-tune the individual locations of the cache data dirs
|
|
# for the Cache data, or the Session saves, un-comment the desired settings
|
|
# here:
|
|
#beaker.cache.data_dir = %(here)s/data/cache
|
|
beaker.session.data_dir = %(here)s/data/sessions
|
|
beaker.session.lock_dir = %(here)s/data/sessions/lock
|
|
|
|
[filter-app:csrf]
|
|
use = egg:middlewares#csrf
|
|
# allow access to account api's for oauth, which will not have csrf token
|
|
# be sure to use the FULL path
|
|
csrf.unprotected_path = /api/account
|
|
next = sessioned
|
|
|
|
[composite:sessioned]
|
|
use = egg:Paste#urlmap
|
|
/ = home
|
|
/api = api
|
|
|
|
[app:home]
|
|
use = egg:Paste#static
|
|
document_root = %(here)s/web
|
|
|
|
[app:api]
|
|
use = egg:linkdrop
|
|
full_stack = true
|
|
static_files = true
|
|
session_middleware = false
|
|
|
|
cache_dir = %(here)s/data
|
|
|
|
# SQLAlchemy database URL
|
|
sqlalchemy.url = sqlite:///%(here)s/development.db
|
|
#sqlalchemy.url = mysql+mysqldb://linkdrop:linkdrop@localhost/linkdrop
|
|
|
|
# SQLAlchemy migration
|
|
# if managed, the migration repository is here
|
|
migrate.repository = %(here)s/changes
|
|
# automatically do database upgrades
|
|
migrate.auto = 1
|
|
|
|
# WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT*
|
|
# Debug mode will enable the interactive debugging tool, allowing ANYONE to
|
|
# execute malicious code after an exception is raised.
|
|
set debug = false
|
|
|
|
# Logging configuration
|
|
[loggers]
|
|
keys = root, routes, linkdrop, sqlalchemy
|
|
|
|
[handlers]
|
|
keys = console
|
|
|
|
[formatters]
|
|
keys = generic
|
|
|
|
[logger_root]
|
|
level = INFO
|
|
handlers = console
|
|
|
|
[logger_routes]
|
|
level = INFO
|
|
handlers =
|
|
qualname = routes.middleware
|
|
# "level = DEBUG" logs the route matched and routing variables.
|
|
|
|
[logger_linkdrop]
|
|
level = WARN
|
|
handlers =
|
|
qualname = linkdrop
|
|
|
|
[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 = generic
|
|
|
|
[formatter_generic]
|
|
format = %(asctime)s,%(msecs)03d %(levelname)-5.5s [%(name)s] [%(threadName)s] %(message)s
|
|
datefmt = %H:%M:%S
|