示例#1
0
def main(global_config, **settings):  # pragma: no cover
    """This function returns a Pyramid WSGI application.

    :param global_config: A :type:`dict` containing global config.
    :param settings: A :type:`dict` containing values from INI.

    :type global_config: dict
    :type settings: dict
    :rtype: pyramid.router.Router
    """
    config = Configurator(settings=normalize_settings(settings))
    config.include('pyramid_mako')
    config.include('pyramid_beaker')

    engine = engine_from_config(config.registry.settings, 'sqlalchemy.')
    DBSession.configure(bind=engine)
    Base.metadata.bind = engine

    cache_region.configure_from_config(config.registry.settings, 'dogpile.')
    redis_conn.from_url(config.registry.settings['redis.url'])
    celery.config_from_object(configure_celery(config.registry.settings))
    identity.configure_tz(config.registry.settings['app.timezone'])
    akismet.configure_key(config.registry.settings['app.akismet_key'])
    dnsbl.configure_providers(config.registry.settings['app.dnsbl_providers'])
    geoip.configure_geoip2(config.registry.settings['app.geoip2_database'])
    checklist.configure_checklist(config.registry.settings['app.checklist'])
    proxy_detector.configure_from_config(
        config.registry.settings,
        'app.proxy_detect.')

    config.set_request_property(remote_addr)
    config.set_request_property(route_name)
    config.add_request_method(tagged_static_path)
    config.add_route('robots', '/robots.txt')

    config.include('fanboi2.serializers')
    config.include('fanboi2.views.pages', route_prefix='/pages')
    config.include('fanboi2.views.api', route_prefix='/api')
    config.include('fanboi2.views.boards', route_prefix='/')
    config.add_static_view('static', 'static', cache_max_age=3600)
    config.scan()

    return config.make_wsgi_app()
示例#2
0
def main(global_config, **settings):  # pragma: no cover
    """This function returns a Pyramid WSGI application.

    :param global_config: A :type:`dict` containing global config.
    :param settings: A :type:`dict` containing values from INI.

    :type global_config: dict
    :type settings: dict
    :rtype: pyramid.router.Router
    """
    config = Configurator(settings=normalize_settings(settings))
    config.include('pyramid_mako')
    config.include('pyramid_beaker')

    engine = engine_from_config(config.registry.settings, 'sqlalchemy.')
    DBSession.configure(bind=engine)
    Base.metadata.bind = engine

    cache_region.configure_from_config(config.registry.settings, 'dogpile.')
    redis_conn.from_url(config.registry.settings['redis.url'])
    celery.config_from_object(configure_celery(config.registry.settings))
    identity.configure_tz(config.registry.settings['app.timezone'])
    akismet.configure_key(config.registry.settings['app.akismet_key'])
    dnsbl.configure_providers(config.registry.settings['app.dnsbl_providers'])
    proxy_detector.configure_from_config(
        config.registry.settings,
        'app.proxy_detect.')

    config.set_request_property(remote_addr)
    config.set_request_property(route_name)
    config.add_request_method(tagged_static_path)
    config.add_route('robots', '/robots.txt')

    config.include('fanboi2.serializers')
    config.include('fanboi2.views.pages', route_prefix='/pages')
    config.include('fanboi2.views.api', route_prefix='/api')
    config.include('fanboi2.views.boards', route_prefix='/')
    config.add_static_view('static', 'static', cache_max_age=3600)
    config.scan()

    return config.make_wsgi_app()
示例#3
0
 def tearDownClass(cls):
     from fanboi2.tasks import celery
     super(TaskMixin, cls).tearDownClass()
     celery.config_from_object({'CELERY_ALWAYS_EAGER': False})
示例#4
0
 def setUpClass(cls):
     from fanboi2.tasks import celery
     super(TaskMixin, cls).setUpClass()
     celery.config_from_object({'CELERY_ALWAYS_EAGER': True})
示例#5
0
 def tearDownClass(cls):
     from fanboi2.tasks import celery
     super(TaskMixin, cls).tearDownClass()
     celery.config_from_object({'CELERY_ALWAYS_EAGER': False})
示例#6
0
 def setUpClass(cls):
     from fanboi2.tasks import celery
     super(TaskMixin, cls).setUpClass()
     celery.config_from_object({'CELERY_ALWAYS_EAGER': True})