Fix build.cgi mode, ulimit.
authorJelmer Vernooij <jelmer@samba.org>
Mon, 15 Nov 2010 13:44:14 +0000 (14:44 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Mon, 15 Nov 2010 13:44:14 +0000 (14:44 +0100)
buildfarm/web/__init__.py
web/build.cgi [changed mode: 0644->0755]

index df5e60868de223d0a0a95529232c2b73a29d16a8..819b9bb98e4def4320b77cbb62f4ba6d9f384a45 100755 (executable)
@@ -972,12 +972,12 @@ class BuildFarmApp(object):
         else:
             start_response('200 OK', [('Content-type', 'text/html')])
 
-            yield "<html>"
-            yield "  <head>"
-            yield "    <title>samba.org build farm</title>"
-            yield "    <script language='javascript' src='/build_farm.js'></script>"
-            yield "    <meta name='keywords' contents='Samba SMB CIFS Build Farm'/>"
-            yield "    <meta name='description' contents='Home of the Samba Build Farm, the automated testing facility.'/>"
+            yield "<html>\n"
+            yield "  <head>\n"
+            yield "    <title>samba.org build farm</title>\n"
+            yield "    <script language='javascript' src='/build_farm.js'></script>\n"
+            yield "    <meta name='keywords' contents='Samba SMB CIFS Build Farm'/>\n"
+            yield "    <meta name='description' contents='Home of the Samba Build Farm, the automated testing facility.'/>\n"
             yield "    <meta name='robots' contents='noindex'/>"
             yield "    <link rel='stylesheet' href='/build_farm.css' type='text/css' media='all'/>"
             yield "    <link rel='stylesheet' href='http://master.samba.org/samba/style/common.css' type='text/css' media='all'/>"
@@ -1031,37 +1031,35 @@ class BuildFarmApp(object):
 if __name__ == '__main__':
     import optparse
     parser = optparse.OptionParser("[options]")
-    parser.add_option("--standalone", help="Run as standalone server (useful for debugging)", action="store_true")
     parser.add_option("--cachedirname", help="Cache directory name", type=str)
-    parser.add_option("--port", help="Port to listen on (in standalone mode) [localhost:8000]", default="localhost:8000", type=str)
+    parser.add_option("--port", help="Port to listen on [localhost:8000]", default="localhost:8000", type=str)
     opts, args = parser.parse_args()
     buildfarm = CachingBuildFarm(cachedirname=opts.cachedirname)
     buildApp = BuildFarmApp(buildfarm)
-    if opts.standalone:
-        from wsgiref.simple_server import make_server
-
-        def standaloneApp(environ, start_response):
-            if environ['PATH_INFO']:
-                dir = os.path.join(os.path.dirname(__file__))
-                if re.match("^/[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)?", environ['PATH_INFO']):
-                    static_file = "%s/%s" % (dir, environ['PATH_INFO'])
-                    if os.path.exists(static_file):
-                        tab = environ['PATH_INFO'].split('.')
-                        if len(tab) > 1:
-                            extension = tab[-1]
-                            import mimetypes
-                            mimetypes.init()
-                            type = mimetypes.types_map[".%s" % extension]
-                            start_response('200 OK', [('Content-type', type)])
-                            data = open(static_file, 'rb').read()
-                            yield data
-                            return
-            yield "".join(buildApp(environ, start_response))
-        try:
-            (address, port) = opts.port.rsplit(":", 1)
-        except ValueError:
-            address = "localhost"
-            port = opts.port
-        httpd = make_server(address, int(port), standaloneApp)
-        print "Serving on %s:%d..." % (address, int(port))
-        httpd.serve_forever()
+    from wsgiref.simple_server import make_server
+
+    def standaloneApp(environ, start_response):
+        if environ['PATH_INFO']:
+            dir = os.path.join(os.path.dirname(__file__))
+            if re.match("^/[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)?", environ['PATH_INFO']):
+                static_file = "%s/%s" % (dir, environ['PATH_INFO'])
+                if os.path.exists(static_file):
+                    tab = environ['PATH_INFO'].split('.')
+                    if len(tab) > 1:
+                        extension = tab[-1]
+                        import mimetypes
+                        mimetypes.init()
+                        type = mimetypes.types_map[".%s" % extension]
+                        start_response('200 OK', [('Content-type', type)])
+                        data = open(static_file, 'rb').read()
+                        yield data
+                        return
+        yield "".join(buildApp(environ, start_response))
+    try:
+        (address, port) = opts.port.rsplit(":", 1)
+    except ValueError:
+        address = "localhost"
+        port = opts.port
+    httpd = make_server(address, int(port), standaloneApp)
+    print "Serving on %s:%d..." % (address, int(port))
+    httpd.serve_forever()
old mode 100644 (file)
new mode 100755 (executable)
index 246fca2..3f6b295
@@ -26,8 +26,8 @@ from buildfarm.web import BuildFarmApp
 import wsgiref.handlers
 import resource
 
-resource.setrlimit(resource.RLIMIT_RSS, (300000, -1))
-resource.setrlimit(resource.RLIMIT_DATA, (300000, -1))
+resource.setrlimit(resource.RLIMIT_RSS, (300000, 300000))
+resource.setrlimit(resource.RLIMIT_DATA, (300000, 300000))
 
 buildfarm = CachingBuildFarm()
 buildApp = BuildFarmApp(buildfarm)