blob: ff25986c2a5ccabebc99ef3b72e1c43115a79602 [file] [log] [blame]
# Copyright 2015 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This is a .pyl, or "Python Literal", file. You can treat it just like a
# .json file, with the following exceptions:
# * all keys must be quoted (use single quotes, please);
# * comments are allowed, using '#' syntax; and
# * trailing commas are allowed.
#
# To generate expecations files in ./mb_config_expectations/, run the following
# from chromium/src directory:
# ./tools/mb/mb.py train -f ./tools/mb/mb_config.pyl
{
# Paths to gn_args_locations.json relative to the directory containing mb_config.pyl.
# Such json files contain maps of
# builder group -> builder ID -> file path of "gn-args.json" generated from starlark.
'gn_args_locations_files': [
'../../infra/config/generated/builders/gn_args_locations.json',
'../../infra/config/generated/builders-dev/gn_args_locations.json',
'../../internal/infra/config/generated/builders/gn_args_locations.json',
],
# This is a map of builder group names -> builder names -> config names
# (where each config name is a key in the 'configs' dict, below). MB uses
# this dict to look up which config to use for a given bot.
'builder_groups': {
'chrome': {
# Don't include unwind tables for linux-/mac-/win-/win64-chrome builders.
# They monitor binary size growth, which may be affected by the tables.
'linux-chrome': 'official_remoteexec',
'mac-chrome': 'official_remoteexec_mac_x64',
'win-branded-rel': 'chrome_branded_remoteexec_minimal_symbols',
'win-chrome': 'official_remoteexec_x86',
'win64-chrome': 'official_remoteexec_x64',
},
'chrome.gpu.fyi': {
'ChromeOS FYI Release Skylab (jacuzzi)': 'gpu_tests_chromeos_jacuzzi_release_trybot_dcheck_off_no_symbols_remoteexec_skylab',
},
'chrome.orderfile': {
'android-arm32-orderfile': 'official_android_arm32_orderfile',
'android-arm64-orderfile': 'official_android_arm64_orderfile',
},
'chrome.pgo': {
'android-arm32-pgo': 'official_android_arm32_pgo',
'android-arm64-pgo': 'official_android_arm64_pgo',
'linux-pgo': 'official_linux_pgo',
'mac-arm-pgo': 'official_mac_arm_pgo_with_symbols',
'mac-pgo': 'official_mac_pgo_with_symbols',
'win-arm64-pgo': 'official_win_arm64_pgo',
'win32-pgo': 'official_x86_pgo',
'win64-pgo': 'official_x64_pgo',
},
'chromium.clang': {
'ToTLinuxOfficial': 'clang_tot_official',
'ToTMacOfficial': 'mac_clang_tot_official',
'ToTWinOfficial': 'clang_tot_win_official_full_symbols_static_x86',
'ToTWinOfficial64': 'clang_tot_win_official_full_symbols_static',
},
'chromium.infra.codesearch': {
'codesearch-gen-chromium-android': 'codesearch_gen_chromium_android_bot_remoteexec',
'codesearch-gen-chromium-chromiumos': 'codesearch_gen_chromium_chromiumos_bot_remoteexec',
'codesearch-gen-chromium-cronet': 'codesearch_gen_chromium_cronet_bot_remoteexec',
'codesearch-gen-chromium-fuchsia': 'codesearch_gen_chromium_fuchsia_bot_remoteexec',
'codesearch-gen-chromium-ios': 'codesearch_gen_chromium_ios_bot_remoteexec',
'codesearch-gen-chromium-linux': 'codesearch_gen_chromium_bot_remoteexec',
'codesearch-gen-chromium-mac': 'codesearch_gen_chromium_mac_bot_remoteexec',
'codesearch-gen-chromium-webview': 'codesearch_gen_chromium_android_bot_remoteexec',
'codesearch-gen-chromium-win': 'codesearch_gen_chromium_bot_remoteexec',
},
'chromium.perf': {
'Android Builder Perf': 'official_remoteexec_minimal_symbols_android',
'Android arm64 Builder Perf': 'official_minimal_symbols_android_arm64',
'android-builder-perf': 'official_remoteexec_minimal_symbols_android',
'android-builder-perf-pgo': 'official_remoteexec_minimal_symbols_android_pgo',
'android-desktop-x64-builder-perf': 'official_remoteexec_min_symbol_webview_android_desktop',
'android_arm64-builder-perf': 'official_minimal_symbols_android_arm64',
'android_arm64-builder-perf-pgo': 'official_remoteexec_minimal_symbols_android_arm64_pgo',
'android_arm64_high_end-builder-perf': 'official_remoteexec_minimal_symbols_android_arm64_high_end',
'android_arm64_high_end-builder-perf-pgo': 'official_remoteexec_minimal_symbols_android_arm64_high_end_pgo',
'chromecast-linux-builder-perf': 'cast_binary_size_remoteexec',
'linux-builder-perf': 'official_linux_perf',
'linux-builder-perf-pgo': 'official_remoteexec_linux_perf_pgo',
'linux-builder-perf-rel': 'official_linux_perf',
'mac-arm-builder-perf': 'official_remoteexec_mac_arm_perf',
'mac-arm-builder-perf-pgo': 'official_remoteexec_mac_arm_perf_pgo',
'mac-arm-no-brp-builder-perf': 'official_remoteexec_mac_arm_no_brp_perf',
'mac-builder-perf': 'official_remoteexec_mac_perf',
'mac-builder-perf-pgo': 'official_remoteexec_mac_perf_pgo',
'win64-builder-perf': 'official_remoteexec_perf_win_cross',
'win64-builder-perf-pgo': 'official_remoteexec_perf_pgo',
},
'chromium.perf.calibration': {
'linux-perf-calibration': 'official_linux_perf',
},
'chromium.perf.fyi': {
'android-cfi-builder-perf-fyi': 'official_remoteexec_minimal_symbols_android_thin_lto_opt',
'android_arm64-cfi-builder-perf-fyi': 'official_remoteexec_minimal_symbols_android_thin_lto_opt_arm64',
'chromeos-kevin-builder-perf-fyi': 'chromeos_kevin_include_unwind_tables_official_remoteexec',
'fuchsia-builder-perf-arm64': 'official_remoteexec_fuchsia_arm64_perf',
'fuchsia-builder-perf-arm64-pgo': 'official_remoteexec_fuchsia_arm64_perf_pgo',
'win-arm64-builder-perf': 'official_remoteexec_perf_win_cross_arm64',
},
'chromium.perf.pinpoint': {
'Android Builder Perf': 'official_remoteexec_minimal_symbols_android',
'Android arm64 Builder Perf': 'official_minimal_symbols_android_arm64',
'android-builder-perf': 'official_remoteexec_minimal_symbols_android',
'android-builder-perf-pgo': 'official_remoteexec_minimal_symbols_android_pgo',
'android-desktop-x64-builder-perf': 'official_remoteexec_min_symbol_webview_android_desktop',
'android_arm64-builder-perf': 'official_minimal_symbols_android_arm64',
'android_arm64-builder-perf-pgo': 'official_remoteexec_minimal_symbols_android_arm64_pgo',
'android_arm64_high_end-builder-perf': 'official_remoteexec_minimal_symbols_android_arm64_high_end',
'android_arm64_high_end-builder-perf-pgo': 'official_remoteexec_minimal_symbols_android_arm64_high_end_pgo',
'chromecast-linux-builder-perf': 'cast_binary_size_remoteexec',
'linux-builder-perf': 'official_linux_perf',
'linux-builder-perf-pgo': 'official_remoteexec_linux_perf_pgo',
'linux-builder-perf-rel': 'official_linux_perf',
'mac-arm-builder-perf': 'official_remoteexec_mac_arm_perf',
'mac-arm-builder-perf-pgo': 'official_remoteexec_mac_arm_perf_pgo',
'mac-builder-perf': 'official_remoteexec_mac_perf',
'mac-builder-perf-pgo': 'official_remoteexec_mac_perf_pgo',
'win-arm64-builder-perf': 'official_remoteexec_perf_win_cross_arm64',
'win64-builder-perf': 'official_remoteexec_perf_win_cross',
'win64-builder-perf-pgo': 'official_remoteexec_perf_pgo',
},
'client.devtools-frontend.integration': {
'DevTools Linux': 'release_trybot_blink_do_typecheck_siso',
'DevTools Linux Fastbuild': 'release_trybot_blink_siso',
},
'client.openscreen.chromium': {
'chromium_linux_x64': 'debug_bot_remoteexec',
'chromium_mac_x64': 'debug_bot_remoteexec',
'chromium_win_x64': 'debug_bot_remoteexec',
},
'client.v8.chromium': {
'Linux V8 API Stability': 'release_bot_remoteexec',
},
'client.v8.fyi': {
'Android V8 FYI Release': 'gpu_tests_android_release_trybot_arm64_remoteexec',
'Linux ASAN Builder': 'asan_lsan_release_trybot_remoteexec',
'Linux Debug Builder': 'debug_bot_blink',
'Linux V8 FYI Release (NVIDIA)': 'gpu_tests_release_trybot_minimal_symbols_remoteexec',
'Linux V8 FYI Release - pointer compression (NVIDIA)': 'gpu_tests_release_trybot_ptr_comp_remoteexec',
'Mac V8 FYI Release (Intel)': 'gpu_tests_release_trybot_minimal_symbols_remoteexec',
'V8 Blink Linux': 'release_bot_blink',
'V8 Blink Linux Debug': 'release_bot_blink_v8_debug_remoteexec',
'V8 Blink Linux Future': 'release_bot_blink',
'V8 Blink Mac': 'release_bot_blink',
'V8 Blink Win': 'release_bot_blink',
'Win V8 FYI Release (NVIDIA)': 'gpu_tests_release_trybot_minimal_symbol_x86_resource_allowlisting_remoteexec',
},
'internal.chrome.fyi': {
'android-buildspeed-dbg': 'android_debug_bot_remoteexec_fastbuild',
'android-emulator-finch-smoke-chrome': 'android_release_bot_minimal_symbols_x86_fastbuild_webview_trichrome_remoteexec',
'linux-finch-smoke-chrome': 'official_remoteexec',
'lorenz-graph-dbg': 'android_debug_bot_remoteexec_external_fastbuild',
'mac-arm64-finch-smoke-chrome': 'official_remoteexec_mac_arm',
'win-celab-rel': 'official_celab_release_bot',
'win-finch-smoke-chrome': 'official_remoteexec',
},
'internal.optimization_guide': {
# Linux and win64 CI bots use official builds to catch official-specific ODML bugs. These
# take significantly longer to compile, and thus are only for these two builders.
'model_validation-linux': 'optimization_guide_rel',
'model_validation-mac-arm64': 'optimization_guide_mac_arm64_rel',
'model_validation-mac-x64': 'optimization_guide_rel',
'model_validation-win-arm64': 'optimization_guide_win_arm64_rel',
'model_validation-win32': 'optimization_guide_x86_rel',
'model_validation-win64': 'optimization_guide_rel',
'optimization_guide-android-arm64': 'optimization_guide_android_arm64_rel',
'optimization_guide-chromeos': 'optimization_guide_cros_rel',
'optimization_guide-ios-device': 'optimization_guide_ios_device_rel',
'optimization_guide-ios-simulator': 'optimization_guide_ios_sim_rel',
'optimization_guide-linux': 'optimization_guide_rel',
'optimization_guide-mac-arm64': 'optimization_guide_mac_arm64_rel',
'optimization_guide-mac-x64': 'optimization_guide_rel',
'optimization_guide-win-arm64': 'optimization_guide_win_arm64_rel',
'optimization_guide-win32': 'optimization_guide_x86_rel',
'optimization_guide-win64': 'optimization_guide_rel',
'optimization_guide_official-linux': 'optimization_guide_official_rel',
'optimization_guide_official-win64': 'optimization_guide_official_rel',
},
# Internal codesearch builders.
'luci.infra-internal.codesearch': {
'codesearch-gen-chrome-internal-android': 'codesearch_gen_chrome_android_bot_remoteexec',
'codesearch-gen-chrome-internal-linux': 'codesearch_gen_chrome_bot_remoteexec',
},
'official.chrome': {
'fuchsia-arm64': 'official_fuchsia_arm64',
'fuchsia-x64': 'official_fuchsia_x64',
},
'tryserver.chrome': {
'linux-chrome': 'official_remoteexec',
'linux-finch-smoke-chrome': 'official_remoteexec',
'mac-arm64-finch-smoke-chrome': 'official_remoteexec_mac_arm',
'mac-chrome': 'official_remoteexec_mac_x64',
'win-branded-compile-rel': 'chrome_branded_remoteexec_minimal_symbols',
'win-celab-try-rel': 'official_celab_release_bot',
'win-chrome': 'official_remoteexec_x86',
'win-finch-smoke-chrome': 'official_remoteexec',
'win64-chrome': 'official_remoteexec_x64',
},
'tryserver.chrome.gpu': {
'gpu-fyi-try-chromeos-skylab-jacuzzi': 'gpu_tests_chromeos_jacuzzi_release_trybot_dcheck_off_no_symbols_remoteexec_skylab',
},
'tryserver.chrome.orderfile': {
'android-arm32-orderfile': 'official_android_arm32_orderfile',
'android-arm64-orderfile': 'official_android_arm64_orderfile',
},
'tryserver.chrome.pgo': {
'android-arm32-pgo': 'official_android_arm32_pgo',
'android-arm64-pgo': 'official_android_arm64_pgo',
'linux-pgo': 'official_linux_pgo_with_symbols',
'mac-arm-pgo': 'official_mac_arm_pgo_with_symbols',
'mac-pgo': 'official_mac_pgo_with_symbols',
'win-arm64-pgo': 'official_win_arm64_pgo_with_symbols',
'win32-pgo': 'official_x86_pgo_with_symbols',
'win64-pgo': 'official_x64_pgo_with_symbols',
},
'tryserver.chromium.perf': {
'Android arm64 Compile Perf': 'official_minimal_symbols_android_arm64',
'Linux Builder Perf': 'official_linux_perf',
},
'tryserver.devtools-frontend': {
# Align devtools blink builders with chromium linux-rel
'devtools_frontend_linux_blink_light_rel': 'release_trybot_blink_do_typecheck_siso',
'devtools_frontend_linux_blink_light_rel_fastbuild': 'release_trybot_blink_siso',
'devtools_frontend_linux_blink_rel': 'release_trybot_blink_do_typecheck_siso',
},
'tryserver.internal.chrome.fyi': {
'android-emulator-finch-smoke-chrome': 'android_release_bot_minimal_symbols_x86_fastbuild_webview_trichrome_remoteexec',
'linux-finch-smoke-chrome': 'official_remoteexec',
'mac-arm64-finch-smoke-chrome': 'official_remoteexec_mac_arm',
'win-finch-smoke-chrome': 'official_remoteexec',
},
'tryserver.internal.optimization_guide': {
'model_validation-linux': 'optimization_guide_rel',
'model_validation-mac-arm64': 'optimization_guide_mac_arm64_rel',
'model_validation-mac-x64': 'optimization_guide_rel',
'model_validation-win-arm64': 'optimization_guide_win_arm64_rel',
'model_validation-win32': 'optimization_guide_x86_rel',
'model_validation-win64': 'optimization_guide_rel',
'optimization_guide-android-arm64': 'optimization_guide_android_arm64_rel',
'optimization_guide-chromeos': 'optimization_guide_cros_rel',
'optimization_guide-ios-device': 'optimization_guide_ios_device_rel',
'optimization_guide-ios-simulator': 'optimization_guide_ios_sim_rel',
'optimization_guide-linux': 'optimization_guide_rel',
'optimization_guide-mac-arm64': 'optimization_guide_mac_arm64_rel',
'optimization_guide-mac-x64': 'optimization_guide_rel',
'optimization_guide-win-arm64': 'optimization_guide_win_arm64_rel',
'optimization_guide-win32': 'optimization_guide_x86_rel',
'optimization_guide-win64': 'optimization_guide_rel',
'optimization_guide_official-linux': 'optimization_guide_official_rel',
'optimization_guide_official-win64': 'optimization_guide_official_rel',
},
'tryserver.v8': {
'v8_linux_blink_rel': 'release_trybot_blink_siso',
'v8_linux_chromium_gn_rel': 'release_trybot_remoteexec_siso',
},
'tryserver.webrtc': {
'android_chromium_compile': 'android_release_trybot_remoteexec_siso',
'linux_chromium_compile': 'release_trybot_remoteexec_siso',
'linux_chromium_compile_dbg': 'debug_bot_remoteexec_siso',
'mac_chromium_compile': 'gpu_tests_release_trybot_remoteexec_siso',
'webrtc_linux_chromium': 'release_trybot_blink_siso',
'win_chromium_compile': 'gpu_tests_release_trybot_resource_allowlisting_remoteexec_siso',
'win_chromium_compile_dbg': 'gpu_tests_debug_bot_x86_no_symbols_remoteexec_siso',
},
},
# This is the list of configs that you can pass to mb; each config
# represents a particular combination of gn args that
# we must support. A given config *may* be platform-specific but
# is not necessarily so.
'configs': {
'android_debug_bot_remoteexec_external_fastbuild': [
'android', 'debug_bot_remoteexec', 'android_external', 'android_fastbuild',
],
'android_debug_bot_remoteexec_fastbuild': [
'android', 'debug_bot_remoteexec', 'android_fastbuild',
],
'android_release_bot_minimal_symbols_x86_fastbuild_webview_trichrome_remoteexec': [
'android', 'release_bot_remoteexec', 'minimal_symbols', 'x86',
'strip_debug_info', 'android_fastbuild', 'webview_trichrome',
'webview_shell',
],
'android_release_trybot_remoteexec_siso': [
'android', 'release_trybot_remoteexec', 'strip_debug_info', 'use_siso',
'android_fastbuild',
],
'asan_lsan_release_trybot_remoteexec': [
'asan', 'lsan', 'release_trybot_minimal_symbols_remoteexec', 'use_siso',
],
'cast_binary_size_remoteexec': [
'cast_receiver', 'cast_os', 'minimal_symbols', 'release_bot_remoteexec',
],
'chrome_branded_remoteexec_minimal_symbols': [
'chrome_branded', 'minimal_symbols', 'release_bot_remoteexec',
],
'chromeos_kevin_include_unwind_tables_official_remoteexec': [
'chromeos_kevin_remoteexec', 'include_unwind_tables', 'official',
],
'clang_tot_official': [
'clang_tot', 'official',
],
'clang_tot_win_official_full_symbols_static': [
'clang_tot', 'official', 'full_symbols', 'static', 'win_linker_timing',
],
'clang_tot_win_official_full_symbols_static_x86': [
'clang_tot', 'official', 'full_symbols', 'static', 'x86', 'win_linker_timing',
],
'codesearch_gen_chrome_android_bot_remoteexec': [
'codesearch_remoteexec', 'android_without_codecs', 'static',
'chrome_branded', 'android_desktop', 'android_fastbuild'
],
'codesearch_gen_chrome_bot_remoteexec': [
'codesearch_remoteexec', 'chrome_branded',
],
'codesearch_gen_chromium_android_bot_remoteexec': [
'codesearch_remoteexec', 'android_without_codecs', 'static',
'android_desktop', 'android_fastbuild',
],
'codesearch_gen_chromium_bot_remoteexec': [
'codesearch_remoteexec',
],
'codesearch_gen_chromium_chromiumos_bot_remoteexec': [
'codesearch_remoteexec', 'chromeos', 'use_cups',
],
'codesearch_gen_chromium_cronet_bot_remoteexec': [
# Set is_cronet_build to true in order to build cronet.
'codesearch_cronet_remoteexec', 'android_without_codecs', 'static', 'is_cronet_build',
'cronet_android', 'arm_no_neon', 'android_fastbuild'
],
'codesearch_gen_chromium_fuchsia_bot_remoteexec': [
'codesearch_release_remoteexec', 'fuchsia', 'cast_receiver',
],
'codesearch_gen_chromium_ios_bot_remoteexec': [
'codesearch_ios_remoteexec', 'ios', 'ios_device', 'ios_disable_code_signing'
],
'codesearch_gen_chromium_mac_bot_remoteexec': [
'codesearch_remoteexec', 'mac',
],
'debug_bot_blink': [
'debug_bot_blink', 'use_siso',
],
'debug_bot_remoteexec': [
'debug_bot_remoteexec',
],
'debug_bot_remoteexec_siso': [
'debug_bot_remoteexec', 'use_siso',
],
'gpu_tests_android_release_trybot_arm64_remoteexec': [
'gpu_tests', 'android', 'release_trybot_minimal_symbols_remoteexec',
'arm64', 'static_angle', 'use_siso', 'android_fastbuild',
],
'gpu_tests_chromeos_jacuzzi_release_trybot_dcheck_off_no_symbols_remoteexec_skylab': [
'gpu_tests', 'chromeos_jacuzzi_remoteexec', 'release_trybot_dcheck_off_remoteexec', 'no_symbols', 'is_skylab',
],
'gpu_tests_debug_bot_x86_no_symbols_remoteexec_siso': [
'gpu_tests', 'debug_bot_remoteexec', 'x86', 'no_symbols', 'use_siso',
],
'gpu_tests_release_trybot_minimal_symbol_x86_resource_allowlisting_remoteexec': [
'gpu_tests', 'release_trybot_minimal_symbols_remoteexec', 'x86', 'resource_allowlisting', 'use_siso',
],
'gpu_tests_release_trybot_minimal_symbols_remoteexec': [
'gpu_tests', 'release_trybot_minimal_symbols_remoteexec', 'use_siso',
],
'gpu_tests_release_trybot_ptr_comp_remoteexec': [
'gpu_tests', 'release_trybot_minimal_symbols_remoteexec', 'v8_pointer_compression', 'use_siso',
],
'gpu_tests_release_trybot_remoteexec_siso': [
'gpu_tests', 'release_trybot_remoteexec', 'use_siso',
],
'gpu_tests_release_trybot_resource_allowlisting_remoteexec_siso': [
'gpu_tests', 'release_trybot_remoteexec', 'resource_allowlisting', 'use_siso',
],
'mac_clang_tot_official': [
'clang_tot', 'official', 'no_widevine_cdm_host_verification', 'x64', 'mac'
],
'official_android_arm32_orderfile': [
'official', 'remoteexec', 'android', 'android_external', 'arm', 'minimal_symbols', 'orderfile',
],
'official_android_arm32_pgo': [
'official', 'remoteexec', 'android', 'android_external', 'arm', 'minimal_symbols', 'no_default_afdo', 'pgo_phase_1', 'stable_version_code',
],
'official_android_arm64_orderfile': [
'official', 'remoteexec', 'android', 'android_external', 'arm64', 'minimal_symbols', 'orderfile',
],
'official_android_arm64_pgo': [
'official', 'remoteexec', 'android', 'android_external', 'arm64', 'minimal_symbols', 'no_default_afdo', 'pgo_phase_1', 'stable_version_code',
],
'official_celab_release_bot': [
'official', 'release_bot_remoteexec', 'minimal_symbols',
],
'official_fuchsia_arm64': [
'arm64', 'fuchsia', 'official', 'custom_args', 'arm64_host',
],
'official_fuchsia_x64': [
'fuchsia', 'official', 'x64', 'custom_args',
],
'official_linux_perf': [
'official', 'remoteexec', 'no_gnome_keyring', 'minimal_symbols', 'pgo_phase_0',
],
'official_linux_pgo': [
'official', 'remoteexec', 'no_symbols', 'pgo_phase_1', 'release'
],
'official_linux_pgo_with_symbols': [
'official', 'remoteexec', 'minimal_symbols', 'pgo_phase_1', 'release'
],
'official_mac_arm_pgo_with_symbols': [
'official', 'remoteexec', 'no_widevine_cdm_host_verification', 'arm64', 'disable_widevine_signing', 'minimal_symbols', 'pgo_phase_1', 'release', 'disable_stripping'
],
'official_mac_pgo_with_symbols': [
'official', 'remoteexec', 'no_widevine_cdm_host_verification', 'x64', 'disable_widevine_signing', 'minimal_symbols', 'pgo_phase_1', 'release', 'disable_stripping'
],
'official_minimal_symbols_android_arm64': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'arm64', 'pgo_phase_0', 'no_default_afdo', 'android_low_end',
],
'official_remoteexec': [
'official', 'remoteexec',
],
'official_remoteexec_fuchsia_arm64_perf': [
'cast_receiver_size_optimized_internal', 'official', 'remoteexec', 'minimal_symbols', 'fuchsia', 'fuchsia_include_sd_images', 'arm64', 'ffmpeg_branding_chrome', 'proprietary_codecs', 'release', 'test_isolate_no_emulator',
],
'official_remoteexec_fuchsia_arm64_perf_pgo': [
'cast_receiver_perf_optimized_internal', 'official', 'remoteexec', 'minimal_symbols', 'fuchsia', 'fuchsia_include_sd_images', 'arm64', 'ffmpeg_branding_chrome', 'proprietary_codecs', 'release', 'test_isolate_no_emulator',
],
'official_remoteexec_linux_perf_pgo': [
'official', 'remoteexec', 'no_gnome_keyring', 'minimal_symbols',
],
'official_remoteexec_mac_arm': [
'official', 'remoteexec', 'no_widevine_cdm_host_verification', 'arm64',
],
'official_remoteexec_mac_arm_no_brp_perf': [
'official', 'remoteexec', 'no_keystone_registration_framework', 'no_widevine_cdm_host_verification', 'minimal_symbols', 'arm64', 'pgo_phase_0', 'no_brp',
],
'official_remoteexec_mac_arm_perf': [
'official', 'remoteexec', 'no_keystone_registration_framework', 'no_widevine_cdm_host_verification', 'minimal_symbols', 'arm64', 'pgo_phase_0',
],
'official_remoteexec_mac_arm_perf_pgo': [
'official', 'remoteexec', 'no_keystone_registration_framework', 'no_widevine_cdm_host_verification', 'minimal_symbols', 'arm64',
],
'official_remoteexec_mac_perf': [
'official', 'remoteexec', 'no_keystone_registration_framework', 'no_widevine_cdm_host_verification', 'minimal_symbols', 'pgo_phase_0',
],
'official_remoteexec_mac_perf_pgo': [
'official', 'remoteexec', 'no_keystone_registration_framework', 'no_widevine_cdm_host_verification', 'minimal_symbols',
],
'official_remoteexec_mac_x64': [
'official', 'remoteexec', 'x64', 'no_widevine_cdm_host_verification',
],
'official_remoteexec_min_symbol_webview_android_desktop': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'pgo_phase_0', 'no_default_afdo', 'webview', 'x64', 'android_desktop', 'dcheck_off'
],
'official_remoteexec_minimal_symbols_android': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'pgo_phase_0', 'no_default_afdo'
],
'official_remoteexec_minimal_symbols_android_arm64_high_end': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'arm64', 'pgo_phase_0', 'no_default_afdo',
],
'official_remoteexec_minimal_symbols_android_arm64_high_end_pgo': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'arm64', 'no_default_afdo',
],
'official_remoteexec_minimal_symbols_android_arm64_pgo': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'arm64', 'android_low_end',
],
'official_remoteexec_minimal_symbols_android_pgo': [
'official', 'remoteexec', 'minimal_symbols', 'android'
],
'official_remoteexec_minimal_symbols_android_thin_lto_opt': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'thin_lto_opt', 'no_default_afdo'
],
'official_remoteexec_minimal_symbols_android_thin_lto_opt_arm64': [
'official', 'remoteexec', 'minimal_symbols', 'android', 'thin_lto_opt', 'arm64', 'no_default_afdo'
],
'official_remoteexec_perf_pgo': [
'official', 'remoteexec', 'minimal_symbols',
],
'official_remoteexec_perf_win_cross': [
'official', 'remoteexec_win_cross', 'minimal_symbols', 'pgo_phase_0',
],
'official_remoteexec_perf_win_cross_arm64': [
'official', 'remoteexec_win_cross', 'arm64', 'minimal_symbols', 'pgo_phase_0',
],
'official_remoteexec_x64': [
'official', 'remoteexec', 'x64', 'minimal_symbols',
],
'official_remoteexec_x86': [
'official', 'remoteexec', 'x86', 'minimal_symbols',
],
'official_win_arm64_pgo': [
'official', 'remoteexec', 'arm64', 'no_symbols', 'pgo_phase_1', 'release'
],
'official_win_arm64_pgo_with_symbols': [
'official', 'remoteexec', 'arm64', 'minimal_symbols', 'pgo_phase_1', 'release'
],
'official_x64_pgo': [
'official', 'remoteexec', 'x64', 'no_symbols', 'pgo_phase_1', 'release'
],
'official_x64_pgo_with_symbols': [
'official', 'remoteexec', 'x64', 'minimal_symbols', 'pgo_phase_1', 'release'
],
'official_x86_pgo': [
'official', 'remoteexec', 'x86', 'no_symbols', 'pgo_phase_1', 'release'
],
'official_x86_pgo_with_symbols': [
'official', 'remoteexec', 'x86', 'minimal_symbols', 'pgo_phase_1', 'release'
],
'optimization_guide_android_arm64_rel': [
'minimal_symbols', 'remoteexec', 'release', 'android', 'arm64', 'android_static_analysis',
],
'optimization_guide_cros_rel': [
'minimal_symbols', 'optimization_guide', 'remoteexec', 'release', 'chromeos',
],
'optimization_guide_ios_device_rel': [
'arm64', 'codesigning_identity', 'ios', 'ios_default_args', 'ios_device', 'minimal_symbols', 'ml_internal', 'optimization_guide', 'remoteexec', 'release', 'xctest',
],
'optimization_guide_ios_sim_rel': [
'arm64', 'codesigning_identity', 'ios', 'ios_default_args', 'ios_simulator', 'minimal_symbols', 'ml_internal', 'optimization_guide', 'remoteexec', 'release', 'xctest',
],
'optimization_guide_mac_arm64_rel': [
'chrome_branded', 'minimal_symbols', 'ml_internal', 'optimization_guide', 'remoteexec', 'release', 'arm64',
],
'optimization_guide_official_rel': [
'minimal_symbols', 'ml_internal', 'no_widevine_cdm_host_verification', 'official', 'optimization_guide', 'pgo_phase_0', 'remoteexec', 'release',
],
'optimization_guide_rel': [
'chrome_branded', 'minimal_symbols', 'ml_internal', 'optimization_guide', 'remoteexec', 'release',
],
'optimization_guide_win_arm64_rel': [
'chrome_branded', 'minimal_symbols', 'ml_internal', 'optimization_guide', 'remoteexec', 'release', 'x86', 'arm64'
],
'optimization_guide_x86_rel': [
'chrome_branded', 'minimal_symbols', 'ml_internal', 'optimization_guide', 'remoteexec', 'release', 'x86',
],
'release_bot_blink': [
'release_bot_blink', 'use_siso',
],
'release_bot_blink_v8_debug_remoteexec': [
'release_bot_blink', 'v8_enable_debugging_features', 'use_siso'
],
'release_bot_remoteexec': [
'release_bot_remoteexec', 'use_siso',
],
'release_trybot_blink_do_typecheck_siso': [
'release_trybot_blink', 'devtools_do_typecheck', 'use_siso',
],
'release_trybot_blink_siso': [
'release_trybot_blink', 'use_siso',
],
'release_trybot_remoteexec_siso': [
'release_trybot_remoteexec', 'use_siso',
],
},
# This is a dict mapping a given 'mixin' name to a dict of settings that
# mb should use. See //tools/mb/docs/user_guide.md for more information.
'mixins': {
# We build Android with codecs on most bots to ensure maximum test
# coverage, but use 'android_without_codecs' on bots responsible for
# building publicly advertised non-Official Android builds --
# which are not allowed to have proprietary codecs enabled.
'android': {
'mixins': ['android_without_codecs', 'chrome_with_codecs'],
},
'android_desktop': {
'gn_args': 'is_desktop_android=true',
},
'android_external': {
'gn_args': 'enable_chrome_android_internal=false',
},
# It's significantly faster to build without static analysis checks.
'android_fastbuild': {
'gn_args': 'android_static_analysis="off"',
},
'android_low_end': {
'gn_args': 'is_high_end_android=false',
},
'android_static_analysis': {
'gn_args': 'android_static_analysis="on"',
},
'android_without_codecs': {
# Bots never have a use for android:debuggable="true". They do not use
# JWDP (java debugger), and do not need it to access application files
# since they always use userdebug OS builds (which have root access).
# android:debuggable="true" causes ART to run more slowly, so tests run
# faster without it. https://crbug.com/1276429
'gn_args': 'target_os="android" debuggable_apks=false',
},
'arm': {
'gn_args': 'target_cpu="arm"',
},
'arm64': {
'gn_args': 'target_cpu="arm64"',
},
'arm64_host': {
'gn_args': 'test_host_cpu="arm64"',
},
'arm_no_neon': {
'mixins': ['arm'],
'gn_args': 'arm_use_neon=false',
},
'asan': {
'gn_args': 'is_asan=true',
},
'blink_enable_generated_code_formatting': {
'gn_args': 'blink_enable_generated_code_formatting=true'
},
'cast_os': {
'gn_args': 'is_castos=true'
},
'cast_receiver': {
'gn_args': 'enable_cast_receiver=true'
},
'cast_receiver_perf_optimized_internal': {
'args_file': '//build/config/fuchsia/perf_optimized_cast_receiver_args_internal.gn',
},
'cast_receiver_size_optimized_internal': {
'args_file': '//build/config/fuchsia/size_optimized_cast_receiver_args_internal.gn',
},
'chrome_branded': {
'gn_args': 'is_chrome_branded=true'
},
'chrome_with_codecs': {
'mixins': ['ffmpeg_branding_chrome', 'proprietary_codecs'],
},
'chromeos': {
'gn_args': 'target_os="chromeos"',
},
'chromeos_device_remoteexec': {
'gn_args': 'is_chromeos_device=true',
'mixins': ['dcheck_off', 'remoteexec'],
},
'chromeos_jacuzzi_remoteexec': {
'mixins': ['chromeos_device_remoteexec', 'jacuzzi', 'ozone_headless']
},
'chromeos_kevin_remoteexec': {
'mixins': ['chromeos_device_remoteexec', 'kevin', 'ozone_headless']
},
'clang': {
'gn_args': 'is_clang=true',
},
'clang_tot': {
'gn_args': 'llvm_force_head_revision=true',
'mixins': ['clang'],
},
# Same as regulary codesearch without blink_enable_generated_code_formatting
'codesearch_cronet_remoteexec': {
'gn_args': 'clang_use_chrome_plugins=false enable_kythe_annotations=true',
'mixins': ['remoteexec', 'clang', 'shared', 'debug', 'minimal_symbols'],
},
# Same as regular codesearch except ios does not allow component builds
'codesearch_ios_remoteexec': {
'gn_args': 'clang_use_chrome_plugins=false enable_kythe_annotations=true',
'mixins': ['remoteexec', 'clang', 'debug', 'minimal_symbols',
'blink_enable_generated_code_formatting'],
},
'codesearch_release_remoteexec': {
'gn_args': 'clang_use_chrome_plugins=false enable_kythe_annotations=true',
'mixins': ['release', 'static', 'remoteexec',
'blink_enable_generated_code_formatting'],
},
# Settings used by the codesearch builders to generate cross-references.
'codesearch_remoteexec': {
'gn_args': 'clang_use_chrome_plugins=false enable_kythe_annotations=true',
'mixins': ['remoteexec', 'clang', 'shared', 'debug', 'minimal_symbols',
'blink_enable_generated_code_formatting'],
},
'codesigning_identity': {
'gn_args': 'ios_code_signing_identity_description="Apple Development: Google Development"',
},
# Keep in sync with //infra/build/recipes/recipe_modules/chromium_android/chromium_config.py
'cronet_android': {
'mixins': ['cronet_common'],
# LINT.IfChange(cronet_android)
'gn_args': ('use_partition_alloc=false '
'use_hashed_jni_names=true '
'default_min_sdk_version=23 '
'clang_use_default_sample_profile=false '
'use_thin_lto=false ' # https://crbug.com/1136963
'enable_resource_allowlist_generation=false '),
# LINT.ThenChange(//infra/config/gn_args/gn_args.star:cronet_android)
},
# Keep in sync with //infra/build/recipes/recipe_modules/chromium_android/chromium_config.py
'cronet_common': {
# LINT.IfChange(cronet_common)
'gn_args': ('enable_websockets=false '
'include_transport_security_state_preload_list=false '
'is_cronet_build=true '
'use_platform_icu_alternatives=true ')
# LINT.ThenChange(//infra/config/gn_args/gn_args.star:cronet_common)
},
'custom_args': {
'args_file': '//build/custom_args.gn',
},
'dcheck_always_on': {
'gn_args': 'dcheck_always_on=true',
},
'dcheck_off': {
'gn_args': 'dcheck_always_on=false',
},
'debug': {
'gn_args': 'is_debug=true',
},
'debug_bot_blink': {
'mixins': ['debug', 'shared', 'remoteexec', 'minimal_symbols', 'chrome_with_codecs'],
},
'debug_bot_remoteexec': {
'mixins': ['debug', 'shared', 'remoteexec', 'minimal_symbols'],
},
# Representative GN args for developer builds.
'devtools_do_typecheck': {
'gn_args': 'devtools_skip_typecheck=false',
},
'devtools_instrumentation_dumping': {
'gn_args': 'devtools_instrumentation_dumping=true',
},
'disable_stripping': {
'gn_args': 'enable_stripping=false',
},
'disable_widevine_signing': {
'gn_args': 'enable_widevine_cdm_host_verification = false'
},
'ffmpeg_branding_chrome': {
'gn_args': 'ffmpeg_branding="Chrome"',
},
'fuchsia': {
'gn_args': 'target_os="fuchsia"',
},
'fuchsia_include_sd_images': {
'gn_args': 'fuchsia_additional_boot_images=["//third_party/fuchsia-sdk/images-internal/astro-release/","//third_party/fuchsia-sdk/images-internal/sherlock-release/","//third_party/fuchsia-sdk/images-internal/nelson-release/"]',
},
'full_symbols': {
'gn_args': 'symbol_level=2',
},
'gpu_tests': {
'mixins': ['chrome_with_codecs'],
},
'include_unwind_tables': {
'gn_args': 'exclude_unwind_tables=false',
},
'ios': {
'gn_args': 'target_os="ios"',
},
'ios_default_args': {
'args_file': '//ios_internal/build/default-args.gn',
},
'ios_device': {
'gn_args': 'target_environment="device"'
},
'ios_disable_code_signing': {
# defaults to true under ios_sdk.gni
'gn_args': 'ios_enable_code_signing=false'
},
'ios_simulator': {
'gn_args': 'target_environment="simulator"',
},
'is_cronet_build': {
'gn_args': 'is_cronet_build=true',
},
'is_skylab': {
'gn_args': 'is_skylab=true',
},
'jacuzzi': {
'args_file': '//build/args/chromeos/jacuzzi.gni',
},
'kevin': {
'args_file': '//build/args/chromeos/kevin.gni',
},
'lsan': {
'gn_args': 'is_lsan=true',
},
'mac': {
'gn_args': 'target_os="mac"',
},
'minimal_symbols': {
'gn_args': 'symbol_level=1',
},
'ml_internal': {
'gn_args': 'enable_ml_internal=true',
},
'no_brp': {
'gn_args': 'enable_backup_ref_ptr_support=false use_raw_ptr_backup_ref_impl=false',
},
'no_default_afdo': {
'gn_args': 'clang_use_default_sample_profile=false',
},
'no_gnome_keyring': {
'gn_args': 'use_gnome_keyring=false',
},
'no_keystone_registration_framework': {
'gn_args': 'enable_keystone_registration_framework=false',
},
'no_proguard_obfuscation': {
'gn_args': 'enable_proguard_obfuscation=false',
},
'no_symbols': {
'gn_args': 'symbol_level=0',
},
'no_widevine_cdm_host_verification': {
'gn_args': 'ignore_missing_widevine_signing_cert=true',
},
'official': {
'mixins': ['official_optimize'],
'gn_args': 'is_chrome_branded=true',
},
'official_optimize': {
'gn_args': 'is_official_build=true',
},
'optimization_guide': {
'gn_args': 'build_with_internal_optimization_guide=true'
},
'order_profiling': {
'gn_args': 'use_order_profiling=true',
},
'orderfile': {
'mixins': ['no_proguard_obfuscation', 'devtools_instrumentation_dumping', 'order_profiling', 'pgo_profile_override'],
},
'ozone_headless': {
'gn_args': 'ozone_platform_headless=true',
},
'pgo_phase_0': {
'mixins': ['strip_absolute_paths_from_debug_symbols'],
'gn_args': 'chrome_pgo_phase=0'
},
'pgo_phase_1': {
'mixins': ['v8_release_branch'],
'gn_args': 'chrome_pgo_phase=1'
},
'pgo_profile_override': {
'args_file': '//tools/pgo/override_args.gni',
},
# Note: This is probably not what you want to use. Instead use one of the
# chrome_with_codecs or chromeos_with_codecs mixins.
'proprietary_codecs': {
'gn_args': 'proprietary_codecs=true',
},
# Historically, a 'release' bot had DCHECKs turned off. DCHECKs are now
# enabled by default, but explicitly turning them off here preserves
# backwards compatibility. TODO: We should probably come up with better
# names like 'dcheck' vs. 'release' to make this clearer.
'release': {
'gn_args': 'is_debug=false dcheck_always_on=false',
},
# All bots that run the WPT test suite must have H.264 compiled in,
# in order to give consistent results for WebRTC codec-dependent tests.
'release_bot_blink': {
'mixins': ['release', 'static', 'remoteexec', 'chrome_with_codecs'],
},
'release_bot_remoteexec': {
'mixins': ['release', 'static', 'remoteexec'],
},
'release_trybot_blink': {
'mixins': ['release_bot_blink', 'minimal_symbols', 'dcheck_always_on'],
},
'release_trybot_dcheck_off_remoteexec': {
'mixins': ['release_trybot_remoteexec', 'dcheck_off'],
},
'release_trybot_minimal_symbols_remoteexec': {
'mixins': ['release_bot_remoteexec', 'minimal_symbols', 'dcheck_always_on'],
},
'release_trybot_remoteexec': {
'mixins': ['release_bot_remoteexec', 'no_symbols', 'dcheck_always_on'],
},
'remoteexec': {
'gn_args': 'use_remoteexec=true use_reclient=false',
},
# windows cross. crbug.com/1213717 crbug.com/1407983
'remoteexec_win_cross': {
'mixins': ['remoteexec'],
'gn_args': 'reclient_cfg_dir="//buildtools/reclient_cfgs/win-cross"',
},
'resource_allowlisting': {
'gn_args': 'enable_resource_allowlist_generation=true',
},
'shared': {
'gn_args': 'is_component_build=true',
},
# Ensures we don't have mulitple versions of Trichrome Library installed on
# devices so as to not run out of disk space.
'stable_version_code': {
'gn_args': 'android_override_version_code="1234567980"',
},
'static': {
'gn_args': 'is_component_build=false',
},
'static_angle': {
'gn_args': 'use_static_angle=true',
},
'strip_absolute_paths_from_debug_symbols': {
'gn_args': 'strip_absolute_paths_from_debug_symbols=true'
},
'strip_debug_info': {
'gn_args': 'strip_debug_info=true',
},
'test_isolate_no_emulator': {
'gn_args': 'test_isolate_uses_emulator=false',
},
'thin_lto_opt': {
'gn_args': 'use_thin_lto=true thin_lto_enable_optimizations=true',
},
'use_cups': {
'gn_args': 'use_cups=true',
},
'use_siso': {
'gn_args': 'use_siso=true',
},
'v8_enable_debugging_features': {
'gn_args': 'v8_enable_debugging_features=true',
},
'v8_pointer_compression': {
# TODO(machenbach): Temporarily toggle pointer-compression off while it
# is on by default.
'gn_args': 'v8_enable_pointer_compression=false',
},
'v8_release_branch': {
# V8 flag that disables v8_enable_runtime_call_stats on release branches.
'gn_args': 'v8_is_on_release_branch=true',
},
'webview': {
'gn_args': 'system_webview_package_name="com.google.android.webview"',
},
# Mainly used by builders that use android emulator.
# See https://bit.ly/3B1cyyt for more details.
'webview_shell': {
'gn_args': 'system_webview_shell_package_name = "org.chromium.my_webview_shell"',
},
# For Android >=Q, only userdebug/eng
'webview_trichrome': {
'gn_args': 'system_webview_package_name="com.google.android.webview.debug"',
},
'win_linker_timing': {
'gn_args': 'win_linker_timing=true',
},
'x64': {
'gn_args': 'target_cpu="x64"',
},
'x86': {
'gn_args': 'target_cpu="x86"',
},
'xctest': {
'gn_args': 'enable_run_ios_unittests_with_xctest=true'
},
},
}