blob: c531dbd7a8ffc0fe1a12a2acceb29f4562cbdab1 [file] [log] [blame]
# Copyright (c) 2012 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from buildbot.process.properties import WithProperties
from buildbot.scheduler import Scheduler
from buildbot.scheduler import Triggerable
from master import master_utils
from master.factory import remote_run_factory
import master_site_config
ActiveMaster = master_site_config.ChromiumMemory
def m_remote_run(recipe, **kwargs):
return remote_run_factory.RemoteRunFactory(
active_master=ActiveMaster,
repository='https://chromium.googlesource.com/chromium/tools/build.git',
recipe=recipe,
factory_properties={'path_config': 'kitchen'},
**kwargs)
def Update(_config, active_master, c):
c['schedulers'].extend([
Scheduler(name='linux_memory_rel',
branch='master',
treeStableTimer=60,
builderNames=[
'Android CFI',
'Linux CFI',
'Linux ChromiumOS MSan Builder',
'Linux MSan Builder',
]),
Triggerable(name='linux_chromiumos_msan_rel_trigger',
builderNames=['Linux ChromiumOS MSan Tests']),
Triggerable(name='linux_msan_rel_trigger',
builderNames=['Linux MSan Tests']),
])
specs = [
{
'name': 'Android CFI',
'category': '2android cfi',
},
{
'name': 'Linux CFI',
'category': '1linux cfi',
},
{
'name': 'Linux ChromiumOS MSan Builder',
'triggers': ['linux_chromiumos_msan_rel_trigger'],
'category': '1linux asan lsan msan',
},
{
'name': 'Linux ChromiumOS MSan Tests',
'category': '1linux asan lsan msan',
},
{
'name': 'Linux MSan Builder',
'triggers': ['linux_msan_rel_trigger'],
'category': '1linux asan lsan msan',
},
{
'name': 'Linux MSan Tests',
'category': '1linux asan lsan msan',
},
]
c['builders'].extend([
{
'name': spec['name'],
'factory': m_remote_run(
'chromium', triggers=spec.get('triggers')),
'notify_on_missing': True,
'category': spec['category'],
} for spec in specs
])