blob: c863f2035a166d23da6457fab14603f048c646a5 [file] [log] [blame]
# Copyright 2014 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 .. import bot_spec, steps
RESULTS_URL = 'https://chromeperf.appspot.com'
def _chromium_clang_spec(**kwargs):
return bot_spec.BotSpec.create(
build_gs_bucket='chromium-clang-archive',
**kwargs)
def config(name,
android_config=None,
build_config='Release',
chromium_config='clang_tot_linux',
target_arch='intel',
target_bits=64,
official=False):
cfg = {
'chromium_config': chromium_config,
'chromium_apply_config': ['mb'],
'gclient_config': 'chromium',
'gclient_apply_config': ['clang_tot'],
'chromium_config_kwargs': {
'BUILD_CONFIG': build_config,
'TARGET_ARCH': target_arch,
'TARGET_BITS': target_bits,
},
'execution_mode': bot_spec.COMPILE_AND_TEST,
'test_results_config': 'staging_server',
'test_specs': {
bot_spec.TestSpec.create(
steps.SizesStep, results_url=RESULTS_URL, perf_id=name)
},
'simulation_platform': 'linux',
}
if android_config:
cfg['android_config'] = android_config
cfg['chromium_config_kwargs']['TARGET_PLATFORM'] = 'android'
cfg['gclient_apply_config'].append('android')
if official:
cfg['gclient_apply_config'].append('chrome_internal')
cfg['gclient_apply_config'].append('checkout_pgo_profiles')
cfg['swarming_server'] = 'https://chrome-swarming.appspot.com'
cfg['isolate_server'] = 'https://chrome-isolated.appspot.com'
cfg['swarming_dimensions'] = {
'pool': 'chrome.tests',
'os': 'Ubuntu-14.04',
}
else:
cfg['isolate_server'] = 'https://isolateserver.appspot.com'
return name, _chromium_clang_spec(**cfg)
SPEC = {
'CFI Linux ToT':
_chromium_clang_spec(
chromium_config='clang_tot_linux',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='linux',
),
'CFI Linux CF':
_chromium_clang_spec(
chromium_config='chromium',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
# Not a ToT bot so no clang_tot gclient_apply_config.
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
cf_archive_build=True,
cf_gs_bucket='chromium-browser-cfi',
cf_gs_acl='public-read',
cf_archive_name='cfi',
test_results_config='staging_server',
simulation_platform='linux',
),
'UBSanVptr Linux':
_chromium_clang_spec(
chromium_config='chromium',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
# Not a ToT bot so no clang_tot gclient_apply_config.
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='linux',
),
'linux-win_cross-rel':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot', 'win'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
'TARGET_PLATFORM': 'win',
},
test_results_config='staging_server',
simulation_platform='win',
),
'ToTiOS':
_chromium_clang_spec(
chromium_config='chromium_no_goma',
chromium_apply_config=[
'mb',
'mac_toolchain',
],
isolate_server='https://isolateserver.appspot.com',
gclient_config='ios',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
'TARGET_PLATFORM': 'ios',
},
simulation_platform='mac',
),
'ToTiOSDevice':
_chromium_clang_spec(
chromium_config='chromium_no_goma',
chromium_apply_config=[
'mb',
'mac_toolchain',
],
isolate_server='https://isolateserver.appspot.com',
gclient_config='ios',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
'TARGET_PLATFORM': 'ios',
},
simulation_platform='mac',
),
'ToTWinCFI':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
),
'ToTWinCFI64':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='win',
),
'ToTWinOfficial':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
gclient_config='chromium',
gclient_apply_config=[
'clang_tot', 'chrome_internal', 'checkout_pgo_profiles'
],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWinOfficial')
],
swarming_server='https://chrome-swarming.appspot.com',
isolate_server='https://chrome-isolated.appspot.com',
swarming_dimensions={
'pool': 'chrome.tests',
'os': 'Windows-10',
},
),
'ToTWinThinLTO64':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
gclient_config='chromium',
gclient_apply_config=[
'clang_tot', 'chrome_internal', 'checkout_pgo_profiles'
],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWinThinLTO64')
],
swarming_server='https://chrome-swarming.appspot.com',
isolate_server='https://chrome-isolated.appspot.com',
swarming_dimensions={
'pool': 'chrome.tests',
'os': 'Windows-10',
},
),
'CrWinAsan':
_chromium_clang_spec(
chromium_config='chromium_win_clang_asan_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
),
'CrWinAsan(dll)':
_chromium_clang_spec(
chromium_config='chromium_win_clang_asan_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
),
'ToTAndroidASan':
_chromium_clang_spec(
chromium_config='clang_tot_android_asan',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot', 'android'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Debug',
'TARGET_PLATFORM': 'android',
'TARGET_ARCH': 'arm',
'TARGET_BITS': 32,
},
android_config='clang_asan_tot_release_builder',
test_results_config='staging_server',
simulation_platform='linux',
),
'ToTAndroid (dbg)':
_chromium_clang_spec(
chromium_config='clang_tot_android_dbg',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot', 'android'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Debug',
'TARGET_PLATFORM': 'android',
'TARGET_ARCH': 'arm',
'TARGET_BITS': 32,
},
android_config='clang_tot_debug_builder',
test_results_config='staging_server',
simulation_platform='linux',
),
'ToTAndroid x64':
_chromium_clang_spec(
chromium_config='clang_tot_android',
gclient_config='chromium',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_apply_config=['clang_tot', 'android'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
'TARGET_PLATFORM': 'android',
},
android_config='clang_builder_mb_x64',
test_results_config='staging_server',
simulation_platform='linux',
),
'ToTMac':
_chromium_clang_spec(
chromium_config='clang_tot_mac',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='mac',
test_specs={
bot_spec.TestSpec.create(
steps.SizesStep, results_url=RESULTS_URL, perf_id='ToTMac')
},
),
'ToTMacOfficial':
_chromium_clang_spec(
chromium_config='clang_tot_mac',
chromium_apply_config=['mb'],
gclient_config='chromium',
gclient_apply_config=[
'clang_tot', 'chrome_internal', 'checkout_pgo_profiles'
],
swarming_server='https://chrome-swarming.appspot.com',
isolate_server='https://chrome-isolated.appspot.com',
swarming_dimensions={
'gpu': 'none',
'os': 'Mac-10.15',
'pool': 'chrome.tests',
},
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='mac',
test_specs={
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTMacOfficial')
},
),
'ToTMac (dbg)':
_chromium_clang_spec(
chromium_config='clang_tot_mac',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Debug',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='mac',
test_specs={
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTMac (dbg)')
},
),
'ToTMacASan':
_chromium_clang_spec(
chromium_config='clang_tot_mac_asan',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='mac',
),
'ToTWin':
_chromium_clang_spec(
chromium_config='chromium_win_clang_official_tot',
chromium_apply_config=['mb'],
gclient_config='chromium',
gclient_apply_config=[
'clang_tot', 'chrome_internal', 'checkout_pgo_profiles'
],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep, results_url=RESULTS_URL, perf_id='ToTWin'),
],
swarming_server='https://chrome-swarming.appspot.com',
isolate_server='https://chrome-isolated.appspot.com',
swarming_dimensions={
'pool': 'chrome.tests',
'os': 'Windows-10',
},
),
'ToTWin(dbg)':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Debug',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWin(dbg)'),
],
),
'ToTWin(dll)':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 32,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWin(dll)'),
],
),
'ToTWin64':
_chromium_clang_spec(
chromium_config='chromium_win_clang_official_tot',
chromium_apply_config=['mb'],
gclient_config='chromium',
gclient_apply_config=[
'clang_tot', 'chrome_internal', 'checkout_pgo_profiles'
],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWin64'),
],
swarming_server='https://chrome-swarming.appspot.com',
isolate_server='https://chrome-isolated.appspot.com',
swarming_dimensions={
'pool': 'chrome.tests',
'os': 'Windows-10',
},
),
'ToTWinASanLibfuzzer':
_chromium_clang_spec(
chromium_config='chromium_win_clang_asan_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='win',
),
'ToTWin64(dbg)':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Debug',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWin64(dbg)'),
],
),
'ToTWin64(dll)':
_chromium_clang_spec(
chromium_config='chromium_win_clang_tot',
chromium_apply_config=['mb'],
isolate_server='https://isolateserver.appspot.com',
gclient_config='chromium',
gclient_apply_config=['clang_tot'],
chromium_config_kwargs={
'BUILD_CONFIG': 'Release',
'TARGET_BITS': 64,
},
test_results_config='staging_server',
simulation_platform='win',
test_specs=[
bot_spec.TestSpec.create(
steps.SizesStep,
results_url=RESULTS_URL,
perf_id='ToTWin64(dll)'),
],
),
}
SPEC.update([
config(
'ToTAndroid',
android_config='clang_tot_release_builder',
chromium_config='clang_tot_android',
target_arch='arm',
target_bits=32),
config(
'ToTAndroid64',
android_config='clang_tot_release_builder',
chromium_config='clang_tot_android',
target_arch='arm',
target_bits=64),
config(
'ToTAndroidCFI',
android_config='clang_tot_release_builder',
chromium_config='clang_tot_android',
target_arch='arm',
target_bits=32),
config(
'ToTAndroidOfficial',
android_config='clang_tot_release_builder',
chromium_config='clang_tot_android',
target_arch='arm',
target_bits=32),
config('ToTLinux'),
config('ToTLinuxOfficial', official=True),
config('ToTLinux (dbg)', build_config='Debug'),
config('ToTLinuxASan', chromium_config='clang_tot_linux_asan'),
config('ToTLinuxASanLibfuzzer', chromium_config='clang_tot_linux_asan'),
config('ToTLinuxMSan'),
config('ToTLinuxTSan'),
config('ToTLinuxThinLTO'),
config('ToTLinuxUBSanVptr', chromium_config='clang_tot_linux_ubsan_vptr'),
])