File: __init__.py

package info (click to toggle)
python-social-auth 0.2.1-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 2,828 kB
  • ctags: 3,245
  • sloc: python: 12,867; makefile: 119; sh: 3
file content (33 lines) | stat: -rw-r--r-- 1,208 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import sys

sys.path.append('../..')

from pyramid.config import Configurator
from pyramid.session import UnencryptedCookieSessionFactoryConfig
from sqlalchemy import engine_from_config

from social.apps.pyramid_app.models import init_social

from .models import DBSession, Base


def main(global_config, **settings):
    """This function returns a Pyramid WSGI application."""
    engine = engine_from_config(settings, 'sqlalchemy.')
    DBSession.configure(bind=engine)
    Base.metadata.bind = engine
    session_factory = UnencryptedCookieSessionFactoryConfig('thisisasecret')
    config = Configurator(settings=settings,
                          session_factory=session_factory,
                          autocommit=True)
    config.add_static_view('static', 'static', cache_max_age=3600)
    config.add_request_method('example.auth.get_user', 'user', reify=True)
    config.add_route('home', '/')
    config.add_route('done', '/done')
    config.include('example.settings')
    config.include('example.local_settings')
    config.include('social.apps.pyramid_app')
    init_social(config, Base, DBSession)
    config.scan()
    config.scan('social.apps.pyramid_app')
    return config.make_wsgi_app()