예제 #1
0
 def __init__(self, backend, address, port=None):
     super(HTTPGitServerThread, self).__init__()
     self.setName("HTTP Git server on %s:%s" % (address, port))
     app = HTTPGitApplication(
         backend,
         handlers={'turnip-set-symbolic-ref': TurnipSetSymbolicRefHandler})
     app.services[('POST', re.compile('/turnip-set-symbolic-ref$'))] = (
         handle_service_request)
     app = GunzipFilter(LimitedInputFilter(app))
     self.server = make_server(
         address, port, app, handler_class=WSGIRequestHandlerLogger,
         server_class=WSGIServerLogger)
예제 #2
0
    def __make_app(self, repo_name, repo_path, extras):
        """
        Make an wsgi application using dulserver

        :param repo_name: name of the repository
        :param repo_path: full path to the repository
        """

        from rhodecode.lib.middleware.pygrack import make_wsgi_app
        app = make_wsgi_app(
            repo_root=safe_str(self.basepath),
            repo_name=repo_name,
            extras=extras,
        )
        app = GunzipFilter(LimitedInputFilter(app))
        return app
예제 #3
0
 def setUp(self):
     super(GunzipTestCase, self).setUp()
     self._app = GunzipFilter(self._app)
     self._environ['HTTP_CONTENT_ENCODING'] = 'gzip'
     self._environ['REQUEST_METHOD'] = 'POST'
예제 #4
0
 def setUp(self):
     super(GunzipTestCase, self).setUp()
     self._app = GunzipFilter(self._app)
     self._environ["HTTP_CONTENT_ENCODING"] = "gzip"
     self._environ["REQUEST_METHOD"] = "POST"
예제 #5
0
def make_wsgi_app(repo_name, repo_root):
    from dulwich.web import LimitedInputFilter, GunzipFilter
    app = GitDirectory(repo_root, repo_name)
    return GunzipFilter(LimitedInputFilter(app))