[pypy-svn] r69656 - pypy/build/bot2/pypybuildbot

pedronis at codespeak.net pedronis at codespeak.net
Thu Nov 26 16:41:02 CET 2009


Author: pedronis
Date: Thu Nov 26 16:41:01 2009
New Revision: 69656

Modified:
   pypy/build/bot2/pypybuildbot/builds.py
   pypy/build/bot2/pypybuildbot/master.py
Log:
restructure things, now we compile pypy-c only once for app-level+lib python tests, use just one configurable factory for the all lot of translated pypy tests

may have broken stuff, we'll see



Modified: pypy/build/bot2/pypybuildbot/builds.py
==============================================================================
--- pypy/build/bot2/pypybuildbot/builds.py	(original)
+++ pypy/build/bot2/pypybuildbot/builds.py	Thu Nov 26 16:41:01 2009
@@ -107,67 +107,70 @@
             env={"PYTHONPATH": ['.'],
                  "PYPYCHERRYPICK": cherrypick}))
 
-class PyPyTranslatedLibPythonTestFactory(factory.BuildFactory):
+class Translated(factory.BuildFactory):
 
-    def __init__(self, *a, **kw):
-        platform = kw.pop('platform', 'linux')
-        factory.BuildFactory.__init__(self, *a, **kw)
+    def __init__(self, platform='linux',
+                 translationArgs=['-O2'], targetArgs=[],
+                 app_tests=False,
+                 lib_python=False,
+                 pypyjit=False                 
+                 ):
+        factory.BuildFactory.__init__(self)
 
         setup_steps(platform, self)
 
-        self.addStep(Translate(["-O2"], []))
+        self.addStep(Translate(translationArgs, targetArgs))
 
-        self.addStep(ShellCmd(
-            description="lib-python test",
-            command=["python", "pypy/test_all.py",
-                     "--pypy=pypy/translator/goal/pypy-c",
-                     "--resultlog=cpython.log", "lib-python"],           
-            logfiles={'pytestLog': 'cpython.log'}))
-
-class PyPyTranslatedAppLevelTestFactory(factory.BuildFactory):
-
-    def __init__(self, *a, **kw):
-        platform = kw.pop('platform', 'linux')
-        factory.BuildFactory.__init__(self, *a, **kw)
+        if app_tests:
+            if app_tests == True:
+                app_tests = []
+            self.addStep(ShellCmd(
+                description="app-level (-A) test",
+                command=["python", "testrunner/runner.py",
+                         "--logfile=pytest-A.log",
+                         "--config=pypy/pytest-A.cfg",
+                         "--root=pypy", "--timeout=1800"
+                         ] + ["--config=%s" % cfg for cfg in app_tests],
+                logfiles={'pytestLog': 'pytest-A.log'},
+                timeout = 4000,
+                env={"PYTHONPATH": ['.']}))
+
+        if lib_python:
+            self.addStep(ShellCmd(
+                description="lib-python test",
+                command=["python", "pypy/test_all.py",
+                         "--pypy=pypy/translator/goal/pypy-c",
+                         "--resultlog=cpython.log", "lib-python"],           
+                logfiles={'pytestLog': 'cpython.log'}))
+
+        if pypyjit:
+            self.addStep(ShellCmd(
+                description="pypyjit tests",
+                command=["python", "pypy/test_all.py",
+                         "--pypy=pypy/translator/goal/pypy-c",
+                         "--resultlog=pypyjit.log",
+                         "pypy/module/pypyjit/test/test_pypy_c.py"],
+                logfiles={'pytestLog': 'pypyjit.log'}))            
+
+
+class JITBenchmark(factory.BuildFactory):
+    def __init__(self, platform='linux'):
+        factory.BuildFactory.__init__(self)
 
         setup_steps(platform, self)
 
-        self.addStep(Translate(["-O2"], []))
-
+        self.addStep(Translate(['-Ojit', '--gc=hybrid',
+                                '--gcrootfinder=asmgcc'],
+                               ['--withoutmod-thread']))
         self.addStep(ShellCmd(
-            description="app-level (-A) test",
-            command=["python", "testrunner/runner.py",
-                     "--logfile=pytest-A.log",
-                     "--config=pypy/pytest-A.cfg",
-                     "--root=pypy", "--timeout=1800"],
-            logfiles={'pytestLog': 'pytest-A.log'},
-            timeout = 4000,
-            env={"PYTHONPATH": ['.']}))
-
-
-class PyPyStacklessTranslatedAppLevelTestFactory(factory.BuildFactory):
-
-    def __init__(self, *a, **kw):
-        platform = kw.pop('platform', 'linux')
-        factory.BuildFactory.__init__(self, *a, **kw)
-
-        setup_steps(platform, self)
-
-        self.addStep(Translate(["-O2", "--stackless"], []))
+            descritpion="run richards & upload results",
+            command=["python", "pypy/translator/benchmark/jitbench.py",
+                     "pypy/translator/goal/pypy-c"]))
 
-        self.addStep(ShellCmd(
-            description="app-level (-A) test",
-            command=["python", "testrunner/runner.py",
-                     "--logfile=pytest-A.log",
-                     "--config=pypy/pytest-A.cfg",
-                     "--config=pypy/pytest-A-stackless.cfg",                     
-                     "--root=pypy", "--timeout=1800"],
-            logfiles={'pytestLog': 'pytest-A.log'},
-            timeout = 4000,
-            env={"PYTHONPATH": ['.']}))
 
 
-class PyPyTranslatedScratchboxTestFactory(factory.BuildFactory):
+# xxx keep style
+class TranslatedScratchbox(factory.BuildFactory):
     def __init__(self, *a, **kw):
         USERNAME = 'buildbot'
         WORKDIR = '/scratchbox/users/%s/home/%s/build' % (USERNAME, USERNAME)
@@ -193,46 +196,3 @@
         self.addStep(ShellCmd(
             description="copy build",
             command=["scp", "pypy-c", "fijal at codespeak.net:builds/pypy-c-scratchbox"], workdir = workdir))
-
-class PyPyJITTranslatedTestFactory(factory.BuildFactory):
-    def __init__(self, *a, **kw):
-        platform = kw.pop('platform', 'linux')
-        factory.BuildFactory.__init__(self, *a, **kw)
-
-        setup_steps(platform, self)
-
-        self.addStep(Translate(['-Ojit', '--gc=hybrid',
-                                '--gcrootfinder=asmgcc',
-                                '--jit-debug=steps'],
-                               ['--withoutmod-thread']))
-        
-        self.addStep(ShellCmd(
-            description="lib-python test",
-            command=["python", "pypy/test_all.py",
-                     "--pypy=pypy/translator/goal/pypy-c",
-                     "--resultlog=cpython.log", "lib-python"],
-            logfiles={'pytestLog': 'cpython.log'}))
-
-        self.addStep(ShellCmd(
-            description="pypyjit tests",
-            command=["python", "pypy/test_all.py",
-                     "--pypy=pypy/translator/goal/pypy-c",
-                     "--resultlog=pypyjit.log",
-                     "pypy/module/pypyjit/test/test_pypy_c.py"],
-            logfiles={'pytestLog': 'pypyjit.log'}))
-
-class PyPyJITBenchmarkFactory(factory.BuildFactory):
-    def __init__(self, *a, **kw):
-        platform = kw.pop('platform', 'linux')
-        factory.BuildFactory.__init__(self, *a, **kw)
-
-        setup_steps(platform, self)
-
-        self.addStep(Translate(['-Ojit', '--gc=hybrid',
-                                '--gcrootfinder=asmgcc'],
-                               ['--withoutmod-thread']))
-        self.addStep(ShellCmd(
-            descritpion="run richards & upload results",
-            command=["python", "pypy/translator/benchmark/jitbench.py",
-                     "pypy/translator/goal/pypy-c"]))
-

Modified: pypy/build/bot2/pypybuildbot/master.py
==============================================================================
--- pypy/build/bot2/pypybuildbot/master.py	(original)
+++ pypy/build/bot2/pypybuildbot/master.py	Thu Nov 26 16:41:01 2009
@@ -48,36 +48,56 @@
 pypyOwnTestFactoryWin = pypybuilds.Own(platform="win32")
 pypyJitOnlyOwnTestFactory = pypybuilds.Own(cherrypick="jit")
 
-pypyTranslatedLibPythonTestFactory = pypybuilds.PyPyTranslatedLibPythonTestFactory()
-pypyTranslatedLibPythonTestFactoryWin = pypybuilds.PyPyTranslatedLibPythonTestFactory(platform="win32")
-pypyTranslatedLibPythonMaemoTestFactory = pypybuilds.PyPyTranslatedScratchboxTestFactory()
-
-pypyTranslatedAppLevelTestFactory = pypybuilds.PyPyTranslatedAppLevelTestFactory()
-
-pypyStacklessTranslatedAppLevelTestFactory = pypybuilds.PyPyStacklessTranslatedAppLevelTestFactory()
-pypyJITTranslatedTestFactory = pypybuilds.PyPyJITTranslatedTestFactory()
-pypyJITBenchmarkFactory = pypybuilds.PyPyJITBenchmarkFactory()
+pypyTranslatedAppLevelTestFactory = pypybuilds.Translated(lib_python=True,
+                                                          app_tests=True)
+
+pypyStacklessTranslatedAppLevelTestFactory = pypybuilds.Translated(
+    translationArgs=["-O2", "--stackless"], targetArgs=[],
+    lib_python=False,
+    app_tests = ["pypy/pytest-A-stackless.cfg"]
+)
+
+pypyTranslatedAppLevelTestFactoryWin = pypybuilds.Translated(
+    platform="win32",
+    lib_python=True,
+    app_tests=True)
+
+pypyJITTranslatedTestFactory = pypybuilds.Translated(
+    translationArgs=['-Ojit', '--gc=hybrid',
+                     '--gcrootfinder=asmgcc',
+                     '--jit-debug=steps'],
+    targetArgs = ['--withoutmod-thread'],
+    lib_python=True,
+    pypyjit=True
+    )
+
+pypyJITBenchmarkFactory = pypybuilds.JITBenchmark()
+
+pypyTranslatedLibPythonMaemoTestFactory = pypybuilds.TranslatedScratchbox()
+
 
 LINUX32 = "own-linux-x86-32"
 MACOSX32 =  "own-macosx-x86-32"
-CPYLINUX32 = "pypy-c-lib-python-linux-x86-32"
-CPYWIN32 = "pypy-c-lib-python-win-32"
-CPYLINUX32_VM = 'pypy-c-lib-python-linux-x86-32vm'
-BUILDMAEMO = "pypy-c-maemo-build"
 APPLVLLINUX32 = "pypy-c-app-level-linux-x86-32"
 STACKLESSAPPLVLLINUX32 = "pypy-c-stackless-app-level-linux-x86-32"
-CPYFREEBSD64 = 'pypy-c-lib-python-freebsd-7-x86-64'
-JITCPYLINUX32 = "pypy-c-jit-lib-python-linux-x86-32"
+
+APPLVLWIN32 = "pypy-c-app-level-win-32"
+APPLVLFREEBSD64 = 'pypy-c-app-level-freebsd-7-x86-64'
+
+JITLINUX32 = "pypy-c-jit-linux-x86-32"
+
 JITONLYLINUX32 = "jitonly-own-linux-x86-32"
 JITBENCH = "jit-benchmark-linux-x86-32"
 
+BUILDMAEMO = "pypy-c-maemo-build"
+
 BuildmasterConfig = {
     'slavePortnum': slavePortnum,
 
     'change_source': [],
     'schedulers': [
-    	Nightly("nightly", [LINUX32, CPYLINUX32, APPLVLLINUX32, CPYWIN32,
-                            STACKLESSAPPLVLLINUX32, JITCPYLINUX32,
+    	Nightly("nightly", [LINUX32, APPLVLLINUX32, APPLVLWIN32,
+                            STACKLESSAPPLVLLINUX32, JITLINUX32,
                             MACOSX32],
                 hour=4, minute=45),
         Nightly("nightly-benchmark", [JITBENCH],
@@ -102,12 +122,6 @@
                    "factory": pypyOwnTestFactory,
                    "category": 'mac'
                   },                  
-                  {"name": CPYLINUX32,
-                   "slavenames": ["wyvern", "cobra"],
-                   "builddir": CPYLINUX32,
-                   "factory": pypyTranslatedLibPythonTestFactory,
-                   "category": 'lib-python'
-                  },
                   {"name": APPLVLLINUX32,
                    "slavenames": ["wyvern", "cobra"],
                    "builddir": APPLVLLINUX32,
@@ -120,16 +134,10 @@
                    "factory": pypyStacklessTranslatedAppLevelTestFactory,
                    "category": 'stackless'
                   },                                    
-                  {"name" : CPYLINUX32_VM,
-                   "slavenames": ['bigdogvm1'],
-                   "builddir": CPYLINUX32_VM,
-                   "factory": pypyTranslatedLibPythonTestFactory,
-                   "category": 'lib-python'
-                   },
-                  {"name": CPYWIN32,
+                  {"name": APPLVLWIN32,
                    "slavenames": ["bigboard"],
-                   "builddir": CPYWIN32,
-                   "factory": pypyTranslatedLibPythonTestFactoryWin,
+                   "builddir": APPLVLWIN32,
+                   "factory": pypyTranslatedAppLevelTestFactoryWin,
                    "category": "windows"
                   },
                   {"name" : BUILDMAEMO,
@@ -138,15 +146,15 @@
                    "factory": pypyTranslatedLibPythonMaemoTestFactory,
                    "category": 'maemo'
                    },
-                  {"name" : CPYFREEBSD64,
+                  {"name" : APPLVLFREEBSD64,
                    "slavenames": ['headless'],
-                   'builddir' : CPYFREEBSD64,
-                   'factory' : pypyTranslatedLibPythonTestFactory,
+                   'builddir' : APPLVLFREEBSD64,
+                   'factory' : pypyTranslatedAppLevelTestFactory,
                    "category": 'other'
                    },
-                  {"name" : JITCPYLINUX32,
+                  {"name" : JITLINUX32,
                    "slavenames": ["bigdogvm1"],
-                   'builddir' : JITCPYLINUX32,
+                   'builddir' : JITLINUX32,
                    'factory' : pypyJITTranslatedTestFactory,
                    'category' : 'jit',
                    },



More information about the Pypy-commit mailing list