Beispiel #1
0
def main(global_config, **settings):
    config = Configurator(settings=settings, root_factory=RouteFactory)

    # Force project name, since it determines settings prefix.
    config.add_settings({'cliquet.project_name': 'kinto'})

    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    # Redirect default to the right endpoint
    config.add_route('default_bucket_collection',
                     '/buckets/default/{subpath:.*}')
    config.add_route('default_bucket', '/buckets/default')

    # Retro-compatibility with first Kinto clients.
    config.registry.public_settings.add('cliquet.batch_max_requests')

    # Scan Kinto views.
    settings = config.get_settings()
    kwargs = {}
    flush_enabled = asbool(settings.get('flush_endpoint_enabled'))
    if not flush_enabled:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
Beispiel #2
0
def main(global_config, config=None, **settings):
    if not config:
        config = Configurator(settings=settings, root_factory=RouteFactory)

    # Force project name, since it determines settings prefix.
    config.add_settings({"cliquet.project_name": "kinto"})

    cliquet.initialize(config, version=__version__, default_settings=DEFAULT_SETTINGS)

    # Redirect default to the right endpoint
    config.add_route("default_bucket_collection", "/buckets/default/{subpath:.*}")
    config.add_route("default_bucket", "/buckets/default")

    # Provide helpers
    config.add_request_method(default_bucket_id, reify=True)
    # Override Cliquet default user info
    config.add_request_method(get_user_info)

    # Retro-compatibility with first Kinto clients.
    config.registry.public_settings.add("cliquet.batch_max_requests")

    # Scan Kinto views.
    settings = config.get_settings()
    kwargs = {}
    flush_enabled = asbool(settings.get("flush_endpoint_enabled"))
    if not flush_enabled:
        kwargs["ignore"] = "kinto.views.flush"
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
Beispiel #3
0
def main(global_config, **settings):
    config = Configurator(settings=settings, root_factory=RouteFactory)

    # Force project name, since it determines settings prefix.
    config.add_settings({'cliquet.project_name': 'kinto'})

    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    # Redirect default to the right endpoint
    config.add_route('default_bucket_collection',
                     '/buckets/default/{subpath:.*}')
    config.add_route('default_bucket', '/buckets/default')

    # Provide helpers
    config.add_request_method(default_bucket_id, reify=True)
    # Override Cliquet default user info
    config.add_request_method(get_user_info)

    # Retro-compatibility with first Kinto clients.
    config.registry.public_settings.add('cliquet.batch_max_requests')

    # Scan Kinto views.
    settings = config.get_settings()
    kwargs = {}
    flush_enabled = asbool(settings.get('flush_endpoint_enabled'))
    if not flush_enabled:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
Beispiel #4
0
def main(global_config, config=None, **settings):
    if not config:
        config = Configurator(settings=settings, root_factory=RouteFactory)

    # Force project name, since it determines settings prefix.
    config.add_settings({'cliquet.project_name': 'kinto'})

    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    settings = config.get_settings()

    # In Kinto API 1.x, a default bucket is available.
    # Force its inclusion if not specified in settings.
    if 'kinto.plugins.default_bucket' not in settings['includes']:
        config.include('kinto.plugins.default_bucket')

    # Retro-compatibility with first Kinto clients.
    config.registry.public_settings.add('cliquet.batch_max_requests')

    # Scan Kinto views.
    kwargs = {}
    flush_enabled = asbool(settings.get('flush_endpoint_enabled'))
    if not flush_enabled:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
Beispiel #5
0
def main(global_config, config=None, **settings):
    if not config:
        config = Configurator(settings=settings, root_factory=RouteFactory)

    # Force project name, since it determines settings prefix.
    config.add_settings({'cliquet.project_name': 'kinto'})

    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    settings = config.get_settings()

    # In Kinto API 1.x, a default bucket is available.
    # Force its inclusion if not specified in settings.
    if 'kinto.plugins.default_bucket' not in settings['includes']:
        config.include('kinto.plugins.default_bucket')

    # Retro-compatibility with first Kinto clients.
    config.registry.public_settings.add('cliquet.batch_max_requests')

    # Scan Kinto views.
    kwargs = {}
    flush_enabled = asbool(settings.get('flush_endpoint_enabled'))
    if not flush_enabled:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
 def test_newrelic_is_included_if_defined(self, mocked_newrelic):
     settings = {
         'cliquet.newrelic_config': '/foo/bar.ini',
         'cliquet.newrelic_env': 'test'
     }
     mocked_newrelic.WSGIApplicationWrapper.return_value = 'wrappedApp'
     app = cliquet.install_middlewares(mock.sentinel.app, settings)
     mocked_newrelic.initialize.assert_called_with('/foo/bar.ini', 'test')
     self.assertEquals(app, 'wrappedApp')
    def test_profiler_is_installed_if_set_to_true(self, mocked_profiler):
        settings = {'profiler_enabled': True, 'profiler_dir': '/tmp/path'}
        mocked_profiler.return_value = 'wrappedApp'
        app = cliquet.install_middlewares(mock.sentinel.app, settings)

        mocked_profiler.assert_called_with(mock.sentinel.app,
                                           restrictions='*cliquet*',
                                           profile_dir='/tmp/path')

        self.assertEquals(app, 'wrappedApp')
Beispiel #8
0
def main(global_config, **settings):
    config = Configurator(settings=settings)

    patch_gevent(settings)

    cliquet.initialize(config, version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    config.scan("readinglist.views")
    app = config.make_wsgi_app()
    return cliquet.install_middlewares(app, settings)
Beispiel #9
0
def main(settings=None, config=None, *args, **additional_settings):
    if settings is None:
        settings = {}
    settings.update(additional_settings)
    if config is None:
        config = Configurator(settings=settings)
    cliquet.initialize(config, version='0.0.1')
    config.include(includeme)
    app = config.make_wsgi_app()
    # Install middleware (no-op if not enabled in setting)
    return cliquet.install_middlewares(app, settings)
def main(global_config, **settings):
    config = Configurator(settings=settings)

    patch_gevent(settings)

    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    config.scan("readinglist.views")
    app = config.make_wsgi_app()
    return cliquet.install_middlewares(app, settings)
Beispiel #11
0
def main(global_config, config=None, **settings):
    if not config:
        config = Configurator(settings=settings, root_factory=RouteFactory)

    # Force project name, since it determines settings prefix.
    config.add_settings({'cliquet.project_name': 'kinto'})

    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    settings = config.get_settings()

    # In Kinto API 1.x, a default bucket is available.
    # Force its inclusion if not specified in settings.
    if 'kinto.plugins.default_bucket' not in settings['includes']:
        config.include('kinto.plugins.default_bucket')

    # Retro-compatibility with first Kinto clients.
    config.registry.public_settings.add('cliquet.batch_max_requests')

    # Expose capability
    schema_enabled = asbool(
        settings['experimental_collection_schema_validation']
    )
    if schema_enabled:
        config.add_api_capability(
            "schema",
            description="Validates collection records with JSON schemas.",
            url="http://kinto.readthedocs.org/en/latest/api/1.x/"
                "collections.html#collection-json-schema")

    # Scan Kinto views.
    kwargs = {}
    flush_enabled = asbool(settings.get('flush_endpoint_enabled'))

    if flush_enabled:
        config.add_api_capability(
            "flush_endpoint",
            description="The __flush__ endpoint can be used to remove all "
                        "data from all backends.",
            url="http://kinto.readthedocs.org/en/latest/configuration/"
                "settings.html#activating-the-flush-endpoint"
        )
    else:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
    def test_profiler_is_installed_if_set_to_true(self, mocked_profiler):
        settings = {
            'cliquet.profiler_enabled': True,
            'cliquet.profiler_dir': '/tmp/path'
        }
        mocked_profiler.return_value = 'wrappedApp'
        app = cliquet.install_middlewares(mock.sentinel.app, settings)

        mocked_profiler.assert_called_with(
            mock.sentinel.app,
            restrictions='*cliquet*',
            profile_dir=('/tmp/path',))

        self.assertEquals(app, 'wrappedApp')
Beispiel #13
0
def main(global_config, **settings):
    config = Configurator(settings=settings, root_factory=RouteFactory)
    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    # Redirect default to the right endpoint
    config.add_route('default_bucket_collection',
                     '/buckets/default/{subpath:.*}')
    config.add_route('default_bucket', '/buckets/default')

    # Scan Kinto views.
    settings = config.get_settings()
    kwargs = {}
    flush_enabled = asbool(settings.get('kinto.flush_endpoint_enabled'))
    if not flush_enabled:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
Beispiel #14
0
def main(global_config, **settings):
    config = Configurator(settings=settings, root_factory=RouteFactory)
    cliquet.initialize(config,
                       version=__version__,
                       default_settings=DEFAULT_SETTINGS)

    # Redirect default to the right endpoint
    config.add_route('default_bucket_collection',
                     '/buckets/default/{subpath:.*}')
    config.add_route('default_bucket', '/buckets/default')

    # Scan Kinto views.
    settings = config.get_settings()
    kwargs = {}
    flush_enabled = asbool(settings.get('kinto.flush_endpoint_enabled'))
    if not flush_enabled:
        kwargs['ignore'] = 'kinto.views.flush'
    config.scan("kinto.views", **kwargs)

    app = config.make_wsgi_app()

    # Install middleware (idempotent if disabled)
    return cliquet.install_middlewares(app, settings)
 def test_profiler_is_not_installed_if_set_to_false(self, mocked_profiler):
     settings = {'cliquet.profiler_enabled': False}
     app = cliquet.install_middlewares(mock.sentinel.app, settings)
     mocked_profiler.initialize.assert_not_called()
     self.assertEquals(app, mock.sentinel.app)
 def test_newrelic_is_not_included_if_set_to_false(self, mocked_newrelic):
     settings = {'cliquet.newrelic_config': False}
     app = cliquet.install_middlewares(mock.sentinel.app, settings)
     mocked_newrelic.initialize.assert_not_called()
     self.assertEquals(app, mock.sentinel.app)
 def test_newrelic_is_included_if_defined(self, mocked_newrelic):
     settings = {'newrelic_config': '/foo/bar.ini', 'newrelic_env': 'test'}
     mocked_newrelic.WSGIApplicationWrapper.return_value = 'wrappedApp'
     app = cliquet.install_middlewares(mock.sentinel.app, settings)
     mocked_newrelic.initialize.assert_called_with('/foo/bar.ini', 'test')
     self.assertEquals(app, 'wrappedApp')
 def test_newrelic_is_not_included_if_set_to_false(self, mocked_newrelic):
     settings = {'newrelic_config': False}
     app = cliquet.install_middlewares(mock.sentinel.app, settings)
     mocked_newrelic.initialize.assert_not_called()
     self.assertEquals(app, mock.sentinel.app)
 def test_profiler_is_not_installed_if_set_to_false(self, mocked_profiler):
     settings = {'profiler_enabled': False}
     app = cliquet.install_middlewares(mock.sentinel.app, settings)
     mocked_profiler.initialize.assert_not_called()
     self.assertEquals(app, mock.sentinel.app)