[pypy-commit] buildbot default: Use the runner options --upload* to control the result upload

csenger noreply at buildbot.pypy.org
Mon Jan 30 19:35:40 CET 2012


Author: Carsten Senger <senger at rehfisch.de>
Branch: 
Changeset: r628:7eaaa5442817
Date: 2012-01-25 10:52 +0100
http://bitbucket.org/pypy/buildbot/changeset/7eaaa5442817/

Log:	Use the runner options --upload* to control the result upload

	* specify all information required for the upload to codespeed as
	options to runner
	* Use the nullpython dummy as the baseline interpreter to prevent
	duplicate benchmark runs for cpython. We upload only the result of
	a benchmark, not the difference to the other interpreter to
	codespeed.

diff --git a/bot2/pypybuildbot/builds.py b/bot2/pypybuildbot/builds.py
--- a/bot2/pypybuildbot/builds.py
+++ b/bot2/pypybuildbot/builds.py
@@ -333,7 +333,7 @@
 
 
 class JITBenchmark(factory.BuildFactory):
-    def __init__(self, platform='linux', postfix=None):
+    def __init__(self, platform='linux', postfix=''):
         factory.BuildFactory.__init__(self)
 
         setup_steps(platform, self)
@@ -351,27 +351,34 @@
                 locks=[lock.access('counting')],
                 )
             )
+
         pypy_c_rel = "../build/pypy/translator/goal/pypy-c"
-        if postfix:
-            addopts = ['--postfix', postfix]
-        else:
-            addopts = []
         self.addStep(ShellCmd(
             # this step needs exclusive access to the CPU
             locks=[lock.access('exclusive')],
             description="run benchmarks on top of pypy-c",
             command=["python", "runner.py", '--output-filename', 'result.json',
-                    '--pypy-c', pypy_c_rel,
+                     '--pypy-c', pypy_c_rel,
                      '--baseline', pypy_c_rel,
                      '--args', ',--jit off',
                      '--upload',
+                     '--upload-executable', 'pypy-c' + postfix,
+                     '--upload-project', 'PyPy',
                      '--revision', WithProperties('%(got_revision)s'),
                      '--branch', WithProperties('%(branch)s'),
-                     ] + addopts,
+                     '--upload-urls', 'http://speed.pypy.org/',
+                     '--upload-baseline',
+                     '--upload-baseline-executable', 'pypy-c-jit' + postfix,
+                     '--upload-baseline-project', 'PyPy',
+                     '--upload-baseline-revision',
+                     WithProperties('%(got_revision)s'),
+                     '--upload-baseline-branch', WithProperties('%(branch)s'),
+                     '--upload-baseline-urls', 'http://localhost',
+                     ],
             workdir='./benchmarks',
             timeout=3600))
         # a bit obscure hack to get both os.path.expand and a property
-        filename = '%(got_revision)s' + (postfix or '')
+        filename = '%(got_revision)s' + postfix
         resfile = os.path.expanduser("~/bench_results/%s.json" % filename)
         self.addStep(transfer.FileUpload(slavesrc="benchmarks/result.json",
                                          masterdest=WithProperties(resfile),
@@ -431,10 +438,14 @@
             locks=[lock.access('exclusive')],
             description="run benchmarks on top of cpython",
             command=["python", "runner.py", '--output-filename', 'result.json',
+                     '--upload',
+                     '--upload-project', 'cpython',
+                     '--upload-executable', 'cpython2',
                      '--revision', WithProperties('%(got_revision)s'),
                      '--branch', WithProperties('%(branch)s'),
+                     '--upload-urls', 'http://localhost/',
                      '-p', cpython_interpreter,
-                     '--baseline', cpython_interpreter,
+                     '--baseline', './nullpython.py',
                      ],
             workdir='./benchmarks',
             haltOnFailure=True,


More information about the pypy-commit mailing list