Skip to content
This repository has been archived by the owner on Jun 19, 2024. It is now read-only.

Commit

Permalink
pbot: Add benchmarker commit as secondary product.
Browse files Browse the repository at this point in the history
  • Loading branch information
schani committed Nov 17, 2015
1 parent f9dc90e commit 1de2bbf
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 6 deletions.
4 changes: 2 additions & 2 deletions performancebot/master.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ from buildbot.schedulers.timed import Nightly
from buildbot.config import BuilderConfig

from monosteps import ParsingShellCommand, PutPropertiesStep
from monofactory import DebianMonoBuildFactory, disable_intel_turbo_steps, reset_intel_turbo_steps, benchmark_step, DetermineMonoRevision
from monofactory import DebianMonoBuildFactory, disable_intel_turbo_steps, reset_intel_turbo_steps, benchmark_step, DetermineProductRevision

from jenkinspoller import BuildURLToPropertyStep, FetchJenkinsBuildDetails, MonoJenkinsPoller, gen_jenkinspoller_codebase
from constants import BUILDBOT_URL, MONO_BASEURL, MONO_PULLREQUEST_BASEURL, MONO_SOURCETARBALL_URL, MONO_SOURCETARBALL_PULLREQUEST_URL, JENKINS_URL, PROPERTYNAME_JENKINSBUILDURL, PROPERTYNAME_JENKINSGITCOMMIT, PROPERTYNAME_MONOVERSION, PROPERTYNAME_RUNSETID, FORCE_PROPERTYNAME_JENKINS_BUILD, PROPERTYNAME_FILTER_BENCHS, BOSTON_NAS_URL, PROPERTYNAME_BOSTONNAS_PKGURL, Lane, Valgrind, QueueType, select_queue_type, BENCHMARKER_BRANCH
Expand Down Expand Up @@ -574,7 +574,7 @@ def _mk_benchmark_bisector(slavename, swarm=None):
steps.extend(
benchmark_step(
benchmark_name=benchmark_name.strip(),
commit_renderer=DetermineMonoRevision,
commit_renderer=lambda: DetermineProductRevision('mono'),
compare_args=[],
root_renderer=lambda: '../mono/build'
)
Expand Down
14 changes: 10 additions & 4 deletions performancebot/monofactory.py
Original file line number Diff line number Diff line change
Expand Up @@ -363,6 +363,7 @@ def benchmark_step(benchmark_name, commit_renderer, compare_args, root_renderer,
'--log-url', Interpolate(BUILDBOT_URL + '/builders/%(prop:buildername)s/builds/%(prop:buildnumber)s'),
'--root', root_renderer(),
'--main-product', 'mono', commit_renderer(),
'--secondary-product', 'benchmarker', DetermineProductRevision('benchmarker'),
'--run-set-id', Interpolate('%(prop:' + PROPERTYNAME_RUNSETID + ')s'),
'--config-file', Interpolate('configs/%(prop:config_name)s.conf')
]
Expand Down Expand Up @@ -407,11 +408,16 @@ def benchmark_step(benchmark_name, commit_renderer, compare_args, root_renderer,
from buildbot.interfaces import IRenderable
from zope.interface import implements

class DetermineMonoRevision(object):
class DetermineProductRevision(object):
implements(IRenderable)

def __init__(self, product):
self.product = product

#pylint: disable=R0201
def getRenderingFor(self, props):
if props.hasProperty('got_revision'):
return props['got_revision']['mono']
return "failed revision lookup"
assert props.hasProperty('got_revision')
products = props['got_revision']
assert self.product in products
return products[self.product]
#pylint: enable=R0201
5 changes: 5 additions & 0 deletions performancebot/monosteps.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,8 @@ def start(self):
mono_version = self.getProperty(PROPERTYNAME_MONOVERSION)
git_commit = self.getProperty(PROPERTYNAME_JENKINSGITCOMMIT)
config_name = self.getProperty('config_name')
benchmarker_commit = self.getProperty('got_revision').get('benchmarker')
assert benchmarker_commit is not None
cmd = ['mono', 'tools/compare.exe', '--create-run-set']
if pullrequestid is not None:
cmd.append('--pull-request-url')
Expand All @@ -86,6 +88,9 @@ def start(self):
cmd.append('configs/%s.conf' % (config_name))
cmd.append('--root')
cmd.append(self.install_root(mono_version))
cmd.append('--secondary-product')
cmd.append('benchmarker')
cmd.append(benchmarker_commit)
self.setCommand(cmd)
ShellCommand.start(self)

Expand Down
5 changes: 5 additions & 0 deletions products/benchmarker.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"Name": "benchmarker",
"GitHubUser": "xamarin",
"GitHubRepo": "benchmarker"
}

0 comments on commit 1de2bbf

Please sign in to comment.