# Copyright 2017 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.

# 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.

[
  {
    'name': 'chromium',
    'machines': {
      'Linux x64': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'scripts': 'public_build_scripts',
        },
      },
      'Mac': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'scripts': 'public_build_scripts',
        },
      },
      'Win': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'scripts': 'public_build_scripts',
        },
      },
      'Win x64': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'scripts': 'public_build_scripts',
        },
      },
    }
  },
  {
    'name': 'chromium.android',
    'machines': {
      'Android ASAN (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Android Cronet Builder': {
        'additional_compile_targets': [
          'cronet_package',
        ],
      },
      'Android arm Builder (dbg)': {
        'additional_compile_targets': [
          'dump_syms',
          'microdump_stackwalk',
        ],
      },
      'Android arm64 Builder (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Android x64 Builder (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Android x86 Builder (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Cast Android (dbg)': {
        'additional_compile_targets': [
          'cast_junit_test_lists',
          'cast_shell_apk',
        ],
        'test_suites': {
          'junit_tests': 'cast_junit_tests',
        },
      },
      'Android Cronet Builder (dbg)': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'skip_merge_script': True,
      },
      'Android Cronet Builder Asan': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
        },
        'use_swarming': False,
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'Android Cronet KitKat Builder': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'skip_merge_script': True,
      },
      'Android WebView L (dbg)': {
        'test_suites': {
          'cts_tests': 'android_l_cts_tests',
          'instrumentation_tests': 'system_webview_shell_instrumentation_tests',
        },
        'use_swarming': False,
        'os_type': 'android',
      },
      'Android WebView M (dbg)': {
        'test_suites': {
          'cts_tests': 'android_m_cts_tests',
          'instrumentation_tests': 'system_webview_and_webview_ui_instrumentation_tests',
        },
        'use_swarming': False,
        'os_type': 'android',
      },
      'Android WebView N (dbg)': {
        'test_suites': {
          'cts_tests': 'android_n_cts_tests',
          'instrumentation_tests': 'system_webview_shell_instrumentation_tests',
        },
        'use_swarming': False,
        'os_type': 'android',
      },
      'Android WebView O (dbg)': {
        'test_suites': {
          'cts_tests': 'android_o_cts_tests',
        },
        'use_swarming': False,
        'os_type': 'android',
      },
      'android-kitkat-arm-rel': {
        'additional_compile_targets': [
          'cronet_test_instrumentation_apk',
          'monochrome_static_initializers',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'junit_tests': 'chromium_junit_tests',
          'isolated_scripts': 'monochrome_apk_checker_isolated_script',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'android-marshmallow-arm64-rel': {
        'additional_compile_targets': [
          'monochrome_static_initializers',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'isolated_scripts': 'marshmallow_isolated_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'KitKat Phone Tester (dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'junit_tests': 'chromium_junit_tests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'KitKat Tablet Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84Z',
              'device_type': 'flo',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
        },
        'os_type': 'android',
      },
      'Lollipop Phone Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'LMY48I',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
          'hard_timeout': 960,
        },
        'os_type': 'android',
      },
      'Lollipop Tablet Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'LMY49B',
              'device_type': 'flo',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
          # This is the most common hard_timeout on this device.
          'hard_timeout': 120,
        },
        'os_type': 'android',
      },
      'Marshmallow 64 bit Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
          'hard_timeout': 960,
        },
        'os_type': 'android',
      },
      'Marshmallow Tablet Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MRA58Z',
              'device_type': 'flo',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
        },
        'os_type': 'android',
      },
      'Nougat Phone Tester': {
        'test_suites': {
          'gtest_tests': 'android_nougat_vr_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'android_devices': '1',
              'device_os': 'NMF26U',
              'device_type': 'marlin',
              'os': 'Android',
            },
          ],
          'hard_timeout': 1800,
        },
        'skip_output_links': True,
        'os_type': 'android',
      },
    },
  },
  {
    'name': 'chromium.android.fyi',
    'machines': {
      'Android Cronet Builder (dbg)': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'Android Cronet Builder Asan': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
        },
        'os_type': 'android',
        'use_swarming': False,
      },
      'Android Cronet KitKat Builder': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
          'scripts': 'cronet_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'Memory Infra Tester': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
          'expiration': 36000,
          'hard_timeout': 10800,
          'ignore_task_failure': False,
          'io_timeout': 3600,
        },
        'test_suites': {
          'isolated_scripts': 'memory_infra_isolated_scripts',
        },
      },
      'Nougat Phone Tester': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'NRD91N',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
          'hard_timeout': 960,
        },
        'os_type': 'android',
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'Oreo Phone Tester': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'OPR3.170623.008',
              'device_type': 'marlin',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'test_suites': {
          'gtest_tests': 'android_oreo_gtests',
        },
      },
      'Unswarmed N5 Tests Dummy Builder': {
        'os_type': 'android',
        'use_swarming': False,
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'instrumentation_tests': 'android_fyi_instrumentation_tests',
          'scripts': 'telemetry_perf_unittests_scripts',
        },
      },
      'Unswarmed N5X Tests Dummy Builder': {
        'os_type': 'android',
        'use_swarming': False,
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'instrumentation_tests': 'android_fyi_instrumentation_tests',
          'scripts': 'telemetry_perf_unittests_scripts',
        },
      },
      'x64 Device Tester': {
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'coho',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'skip_cipd_packages': True,
        'skip_output_links': True,
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'x86 Cloud Tester': {
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'gce_x86',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'skip_cipd_packages': True,
        'skip_output_links': True,
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'isolated_scripts': 'telemetry_perf_unittests_isolated_scripts',
        },
      },
    },
  },
  {
    'name': 'chromium.chrome',
    'machines': {
    },
  },
  {
    'name': 'chromium.chromiumos',
    'machines': {
      'chromeos-amd64-generic-rel': {
        'additional_compile_targets': [
          'chromiumos_preflight',
        ],
        'test_suites': {
          'gtest_tests': 'chromeos_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'kvm': '1',
              'os': 'Ubuntu-14.04',
              'pool': 'Chrome-CrOS-VM',
            },
          ],
        },
      },
      'chromeos-daisy-rel': {
        'additional_compile_targets': [
          'chromiumos_preflight',
        ],
      },
      'linux-chromeos-dbg': {
        'test_suites': {
          'gtest_tests': 'linux_chromeos_dbg_gtests',
        },
      },
      'linux-chromeos-rel': {
        'additional_compile_targets': [
          'gn_all',
        ],
        'test_suites': {
          'gtest_tests': 'linux_chromeos_rel_gtests',
        },
      },
    },
  },
  {
    'name': 'chromium.clang',
    'machines': {
      'CFI Linux (icall)': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_and_gl_gtests',
        },
      },
      'CFI Linux ToT': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_and_gl_gtests',
        },
      },
      'CrWinAsan': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Windows-10',
            },
          ],
        },
      },
      'CrWinAsan(dll)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Windows-10',
            },
          ],
        },
      },
      'CrWinAsanCov': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Windows-10',
            },
          ],
        },
      },
      'CrWinClangLLD': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'CrWinClangLLD64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'CrWinClngLLD64dbg': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'CrWinClngLLDdbg': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTAndroid': {
        'additional_compile_targets': [
          'all',
        ],
        # This mirrors 'android-kitkat-arm-rel'.
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
          'junit_tests': 'chromium_junit_tests',
          'isolated_scripts': 'monochrome_apk_checker_isolated_script',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
      },
      'ToTAndroid x64': {
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'coho',
              'os': 'Android',
            },
          ],
        },
        'test_suites': {
          # TODO(crbug.com/807966): Re-enable tests once there are devices to run them on.
        },
      },
      'ToTAndroid64': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'ToTAndroidASan': {
        'test_suites': {
          'gtest_tests': 'chromium_android_asan_gtests',
          'junit_tests': 'chromium_android_asan_junit_tests',
        },
        'use_swarming': False,
      },
      'ToTAndroidCFI': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'ToTLinux': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
          'scripts': 'check_gn_headers_script',
        },
      },
      'ToTLinux (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'ToTLinuxASan': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
        },
      },
      'ToTLinuxMSan': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
        },
      },
      'ToTLinuxThinLTO': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_and_gl_gtests',
        },
      },
      'ToTLinuxUBSanVptr': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          # no "_and_gl":gl_unittests doesn't pass yet,
          # crbug.com/https://crbug.com/815183
          'gtest_tests': 'chromium_linux_gtests',
        },
      },
      'ToTMac': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'ToTMacASan': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
        },
      },
      'ToTWin': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWin(dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWin(dll)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWin64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWin64(dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWin64(dll)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWinCFI': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWinCFI64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWinLibcxx64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'ToTWinThinLTO64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'linux-win_cross-rel': {
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Windows-10',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'UBSanVptr Linux': {
        'test_suites': {
          # no "_and_gl":gl_unittests doesn't pass yet,
          # crbug.com/https://crbug.com/815183
          'gtest_tests': 'chromium_linux_gtests',
        },
      },
    },
  },
  {
    'name': 'chromium.goma',
    'machines': {
      'Chromium Linux Goma GCE Staging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Linux Goma RBE Staging (clobber)': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Linux Goma RBE Staging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Linux Goma RBE Staging (dbg) (clobber)': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Linux Goma RBE Staging (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Linux Goma Staging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Mac Goma GCE Staging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Chromium Mac Goma Staging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'CrWinClangGomaGCEStaging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'CrWinGomaStaging': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
    },
  },
  {
    'name': 'chromium.gpu',
    'machines': {
      'Android Release (Nexus 5X)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
        },
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'GPU Linux Builder': {},
      'GPU Linux Builder (dbg)': {},
      'GPU Mac Builder': {},
      'GPU Mac Builder (dbg)': {},
      'GPU Win Builder': {},
      'GPU Win Builder (dbg)': {},
      'Linux Debug (NVIDIA)': {
        'browser_config': 'debug',
        'os_type': 'linux',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_desktop_gtests',
          'gpu_telemetry_tests': 'gpu_common_win_and_linux_telemetry_tests',
        },
      },
      'Linux Release (NVIDIA)': {
        'browser_config': 'release',
        'os_type': 'linux',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_desktop_gtests',
          'gpu_telemetry_tests': 'gpu_common_win_and_linux_telemetry_tests',
        },
      },
      'Mac Debug (Intel)': {
        'browser_config': 'debug',
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_desktop_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Mac Release (Intel)': {
        'browser_config': 'release',
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_desktop_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Mac Retina Debug (AMD)': {
        'browser_config': 'debug',
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_desktop_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Mac Retina Release (AMD)': {
        'browser_config': 'release',
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_desktop_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Win10 Debug (NVIDIA)': {
        'browser_config': 'debug',
        'os_type': 'win',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_win_gtests',
          'gpu_telemetry_tests': 'gpu_common_win_and_linux_telemetry_tests',
        },
      },
      'Win10 Release (NVIDIA)': {
        'browser_config': 'release',
        'os_type': 'win',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_win_gtests',
          'gpu_telemetry_tests': 'gpu_common_win_and_linux_telemetry_tests',
        },
        'use_multi_dimension_trigger_script': True,
      },
    },
  },
  {
    'name': 'chromium.gpu.fyi',
    'machines': {
      'Android FYI 32 Vk Release (Nexus 5X)': {
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'O',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
        },
      },
      'Android FYI 32 dEQP Vk Release (Nexus 5X)': {
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'O',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_gles2_vulkan_tests',
        },
      },
      'Android FYI 64 Vk Release (Nexus 5X)': {
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'O',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
        },
      },
      'Android FYI 64 dEQP Vk Release (Nexus 5X)': {
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'O',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_gles2_vulkan_tests',
        },
      },
      'Android FYI Release (NVIDIA Shield TV)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'foster',
              'device_os': 'N',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_android_and_mac_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Android FYI Release (Nexus 5)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'hammerhead',
              'device_os': 'L',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_android_and_mac_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Android FYI Release (Nexus 5X)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'MMB29Q',
              'os': 'Android'
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_android_and_mac_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Android FYI Release (Nexus 6)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'shamu',
              'device_os': 'L',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_android_and_mac_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Android FYI Release (Nexus 6P)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'angler',
              'device_os': 'M',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_android_and_mac_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Android FYI Release (Nexus 9)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'flounder',
              'device_os': 'M',
              'os': 'Android',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_android_and_mac_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Android FYI dEQP Release (Nexus 5X)': {
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'MMB29Q',
              'os': 'Android'
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_android_gtests',
        },
      },
      'GPU FYI Linux Builder' : {},
      'GPU FYI Linux Builder (dbg)' : {},
      'GPU FYI Linux Ozone Builder' : {},
      'GPU FYI Linux dEQP Builder' : {},
      'GPU FYI Mac Builder' : {},
      'GPU FYI Mac Builder (dbg)' : {},
      'GPU FYI Mac dEQP Builder' : {},
      'GPU FYI Win Builder' : {},
      'GPU FYI Win Builder (dbg)' : {},
      'GPU FYI Win dEQP Builder': {},
      'GPU FYI Win x64 Builder' : {},
      'GPU FYI Win x64 Builder (dbg)' : {},
      'GPU FYI Win x64 dEQP Builder' : {},
      'Linux FYI Debug (NVIDIA)': {
        'browser_config': 'debug',
        'os_type': 'linux',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_linux_debug_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_and_linux_telemetry_tests',
        },
      },
      'Linux FYI GPU TSAN Release': {
        # This bot doesn't run any Telemetry-based tests so doesn't
        # need the browser_config parameter.
        'os_type': 'linux',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          # This bot doesn't run any browser-based tests
          # (tab_capture_end2end_tests) either.
          'gtest_tests': 'gpu_fyi_linux_debug_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
        },
      },
      'Linux FYI Ozone (Intel)': {
        'os_type': 'linux',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:1912',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        # This bot runs only a few tests so far.
        'test_suites': {
          'gtest_tests': 'gpu_angle_gtests',
        },
      },
      'Linux FYI Release (AMD R7 240)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6613',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
          # There's only one bot of this type in the Swarming pool right now, so
          # we have to increase the default expiration time of 1 hour (3600
          # seconds) to prevent webgl2_conformance_tests' shards from timing
          # out.
          'expiration': 10800,
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_linux_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_and_linux_release_telemetry_tests',
        },
      },
      'Linux FYI Release (Intel HD 630)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # INTEL_HD_630
              'gpu': '8086:5912',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_linux_release_gtests',
          # TODO(kbr): switch this to
          # gpu_fyi_win_and_linux_intel_and_nvidia_release_telemetry_tests. Seems
          # to have been an oversight that
          # webgl2_conformance_gl_passthrough_tests was't running on the Linux
          # Intel HD 630 bots.
          'gpu_telemetry_tests': 'gpu_fyi_win_and_linux_release_telemetry_tests',
        },
      },
      'Linux FYI Release (NVIDIA)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_linux_release_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_fyi_win_and_linux_intel_and_nvidia_release_telemetry_tests',
        },
      },
      'Linux FYI dEQP Release (Intel HD 630)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # INTEL_HD_630
              'gpu': '8086:5912',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_gles2_gl_tests',
        },
      },
      'Linux FYI dEQP Release (NVIDIA)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_linux_nvidia_gtests',
        },
      },
      'Mac FYI Debug (Intel)': {
        'os_type': 'mac',
        'browser_config': 'debug',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_debug_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Mac FYI Experimental Release (Intel)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.13.4',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI Experimental Retina Release (AMD)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.13.4',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI Experimental Retina Release (NVIDIA)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '10de:0fe9',
              'hidpi': '1',
              'os': 'Mac-10.13.4',
              'pool': 'Chrome-GPU',
            },
          ],
          # There's only one bot of this type in the Swarming pool right now, so
          # we have to increase the default expiration time of 1 hour (3600
          # seconds) to prevent webgl2_conformance_tests' shards from timing
          # out.
          'expiration': 10800,
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI GPU ASAN Release': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            # This bot spawns jobs on multiple GPU types.
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI Release (Intel)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI Retina Debug (AMD)': {
        'os_type': 'mac',
        'browser_config': 'debug',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_debug_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Mac FYI Retina Debug (NVIDIA)': {
        'os_type': 'mac',
        'browser_config': 'debug',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '10de:0fe9',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_debug_gtests',
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Mac FYI Retina Release (AMD)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI Retina Release (NVIDIA)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '10de:0fe9',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Mac FYI dEQP Release AMD': {
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_mac_gtests',
        },
      },
      'Mac FYI dEQP Release Intel': {
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_mac_gtests',
        },
      },
      'Mac Pro FYI Release (AMD)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:679e',
              'os': 'Mac-10.12',
              'pool': 'Chrome-GPU',
            },
          ],
          # There are only two bots of this type in the Swarming pool right now,
          # so we have to increase the default expiration time of 1 hour (3600
          # seconds) to prevent webgl2_conformance_tests' shards from timing
          # out.
          'expiration': 10800,
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_release_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_mac_release_telemetry_tests',
        },
      },
      'Optional Android Release (Nexus 5X)': {
        'os_type': 'android',
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'bullhead',
              'device_os': 'MMB29Q',
              'os': 'Android'
            },
          ],
        },
        # No tests run on this bot right now; they are all running on the main
        # android_n5x_swarming_rel bot. We should get the WebGL 2.0 conformance
        # tests running on this bot, similarly to how they run on the optional
        # desktop trybots.
      },
      'Optional Linux Release (Intel HD 630)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # INTEL_HD_630
              'gpu': '8086:5912',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_linux_optional_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_optional_linux_telemetry_tests',
        },
      },
      'Optional Linux Release (NVIDIA)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_linux_optional_gtests',
          # This optional tryserver additionally runs angle_perftests.
          'isolated_scripts': 'gpu_fyi_and_optional_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_fyi_optional_linux_telemetry_tests',
        },
      },
      'Optional Mac Release (Intel)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_optional_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_optional_telemetry_tests',
        },
      },
      'Optional Mac Retina Release (AMD)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_optional_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_optional_telemetry_tests',
        },
      },
      'Optional Mac Retina Release (NVIDIA)': {
        'os_type': 'mac',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '10de:0fe9',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_mac_optional_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_optional_telemetry_tests',
        },
      },
      'Optional Win10 Release (Intel HD 630)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_INTEL_HD_630_STABLE_DRIVER
              'gpu': '8086:5912-23.20.16.4877',
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_optional_gtests',
          'gpu_telemetry_tests': 'gpu_optional_win_telemetry_tests',
        },
      },
      'Optional Win10 Release (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_optional_gtests',
          # This optional tryserver additionally runs angle_perftests.
          'isolated_scripts': 'gpu_fyi_and_optional_win_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_optional_win_telemetry_tests',
        },
        'use_multi_dimension_trigger_script': True,
      },
      'Win10 FYI Debug (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'debug',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_debug_telemetry_tests',
        },
      },
      'Win10 FYI Exp Release (Intel HD 630)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_INTEL_HD_630_EXPERIMENTAL_DRIVER
              'gpu': '8086:5912-24.20.100.6025',
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_telemetry_tests',
        },
      },
      # TODO(kbr): "Experimental" caused too-long path names pre-LUCI.
      # crbug.com/812000
      'Win10 FYI Exp Release (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_EXPERIMENTAL_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_EXPERIMENTAL_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        # Currently the experimental driver is identical to the stable
        # driver. If it's upgraded, change these test_suites to be the same as
        # 'Win10 FYI Release (NVIDIA)'.
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_noop_sleep_telemetry_test',
        },
      },
      'Win10 FYI Release (Intel HD 630)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_INTEL_HD_630_STABLE_DRIVER
              'gpu': '8086:5912-23.20.16.4877',
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_telemetry_tests',
        },
      },
      'Win10 FYI Release (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_gtests',
          'isolated_scripts': 'gpu_fyi_and_optional_win_isolated_scripts',
          'gpu_telemetry_tests': 'gpu_fyi_win_nvidia_release_telemetry_tests',
        },
        'use_multi_dimension_trigger_script': True,
      },
      'Win10 FYI dEQP Release (Intel HD 630)': {
        'os_type': 'win',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_INTEL_HD_630_STABLE_DRIVER
              'gpu': '8086:5912-23.20.16.4877',
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_gles2_d3d11_tests',
        },
      },
      'Win10 FYI dEQP Release (NVIDIA)': {
        'os_type': 'win',
        'swarming': {
          'dimension_sets': [
            {
              # WIN10_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8816',
              # WIN10_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-10',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_win_nvidia_gtests',
        },
      },
      # This tryserver doesn't actually exist; it's a separate
      # configuration from the Win AMD bot on this waterfall because we
      # don't have enough tryserver capacity to run all the tests from
      # that bot on win_angle_rel_ng.
      'Win7 ANGLE Tryserver (AMD)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6613',
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_win_angle_amd_gtests',
          'gpu_telemetry_tests': 'gpu_win_angle_amd_telemetry_tests',
        },
      },
      'Win7 FYI Debug (AMD)': {
        'os_type': 'win',
        'browser_config': 'debug',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6613',
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_debug_telemetry_tests',
        },
      },
      'Win7 FYI Release (AMD)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6613',
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win_telemetry_tests',
        },
      },
      'Win7 FYI Release (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # WIN7_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8792',
              # WIN7_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win7_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win7_nvidia_release_telemetry_tests',
        },
        'use_multi_dimension_trigger_script': True,
      },
      'Win7 FYI dEQP Release (AMD)': {
        'os_type': 'win',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6613',
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_angle_deqp_win_amd_gtests',
        },
      },
      'Win7 FYI x64 Release (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'release_x64',
        'swarming': {
          'dimension_sets': [
            {
              # WIN7_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8792',
              # WIN7_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'gpu_fyi_win7_gtests',
          'gpu_telemetry_tests': 'gpu_fyi_win7_nvidia_release_telemetry_tests',
        },
      },
      'Win7 FYI x64 dEQP Release (NVIDIA)': {}
    },
  },
  {
    'name': 'chromium.fyi',
    'machines': {
      'Android Builder (dbg) Goma Canary': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Android VR Tests': {
        'test_suites': {
          'gtest_tests': 'android_fyi_vr_gtests',
          'instrumentation_tests': 'android_fyi_vr_instrumentation_tests',
        },
        'os_type': 'android',
        'skip_output_links': True,
      },
      'CFI Linux (icall)': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_and_gl_gtests',
        },
      },
      'CFI Linux ToT': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_and_gl_gtests',
        },
      },
      'Chromium Mac 10.11': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_fyi_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
        'use_swarming': False,
      },
      'Chromium Mac 10.11 Force Mac Toolchain': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_fyi_gtests',
        },
        'use_swarming': False,
      },
      'Chromium Mac 10.13': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_fyi_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'Chromium Win 10 GCE Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_win_fyi_gtests',
        },
      },
      'chromeos-amd64-generic-rel-goma-canary': {
        'additional_compile_targets': [
          'chromiumos_preflight',
        ],
      },
      'chromeos-amd64-generic-rel-vm-tests': {
        'additional_compile_targets': [
          'chromiumos_preflight',
        ],
        'test_suites': {
          'gtest_tests': 'chromeos_gtests_experimental',
          'isolated_scripts': 'chromeos_isolated_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'kvm': '1',
              'os': 'Ubuntu-14.04',
              'pool': 'Chrome-CrOS-VM',
            },
          ],
          'hard_timeout': 3600,
          'io_timeout': 3600,
        },
      },
      'Dummy WebKit Mac10.13': {
        'swarming': {
          'dimension_sets': [
            {
              # This matches the dimensions for "Chromium Mac10.13" in
              # chromium_fyi.py.
              'gpu': '8086:0a2e',
              'os': 'Mac-10.13',
            },
          ],
          'hard_timeout': 900,
        },
        'test_suites': {
          'isolated_scripts': 'webkit_layout_tests_isolated_scripts',
        },
      },

      'Fuchsia': {
        'additional_compile_targets': [
          'gn_all',
        ],
        'swarming': {
          'dimension_sets': [
            {
              'kvm': '1',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'fuchsia_gtests',
        },
      },
      'Fuchsia (dbg)': {
        'additional_compile_targets': [
          'gn_all',
        ],
        'swarming': {
          'dimension_sets': [
            {
              'kvm': '1',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'fuchsia_gtests',
        },
      },
      'Fuchsia ARM64': {
        'additional_compile_targets': [
          'gn_all',
        ],
        'test_suites': {
          'gtest_tests': 'fuchsia_gtests',
        },
      },
      'Headless Linux (dbg)': {
        'additional_compile_targets': [
          'headless_lib',
          'headless_shell',
          'headless_tests',
        ],
        'test_suites': {
          'gtest_tests': 'headless_linux_gtests',
          'scripts': 'headless_linux_scripts',
        },
        'use_swarming': False,
      },
      'Jumbo Linux x64': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Jumbo Mac': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Jumbo Win x64': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'Linux ARM': {
        'test_suites': {
          'gtest_tests': 'linux_arm_gtests',
        },
      },
      'linux-blink-heap-incremental-marking': {
        'test_suites': {
          'gtest_tests': 'chromium_gtests',
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'Linux Builder Goma Canary': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Linux Clang Analyzer': {
        'additional_compile_targets': [
          'chrome',
        ]
      },
      'Linux x64 Goma Canary (clobber)': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Linux x64 Goma Canary LocalOutputCache': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Linux Viz': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'viz_fyi_gtests',
          'isolated_scripts': 'linux_viz_isolated_scripts',
        },
      },
      'linux-annotator-rel': {
        'test_suites': {
          'scripts': 'test_traffic_annotation_auditor_script',
        }
      },
      'linux-blink-gen-property-trees': {
        'test_suites': {
          'isolated_scripts': 'webkit_layout_tests_isolated_scripts',
        },
      },
      'linux-blink-heap-verification': {
        'test_suites': {
          'gtest_tests': 'chromium_gtests',
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'linux-chromium-tests-staging-builder': {
        'additional_compile_targets': [
          'all'
        ],
        'test_suites': {
          'scripts': 'check_network_annotations_script',
        }
      },
      'linux-chromium-tests-staging-tests': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
          'isolated_scripts': 'chromium_linux_rel_isolated_scripts',
        },
      },
      'Mac Builder (dbg) Goma Canary': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_mac_gtests',
        },
      },
      'Mac Builder (dbg) Goma Canary (clobber)': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_mac_gtests',
        },
      },
      'Mac Builder Goma Canary': {
        'additional_compile_targets': [
          'all',
          'pdf_fuzzers',
        ],
        'test_suites': {
          'gtest_tests': 'goma_mac_gtests',
        },
      },
      'Mac Goma Canary (clobber)': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_mac_gtests',
        },
      },
      'Mac Goma Canary LocalOutputCache': {
        'additional_compile_targets': [
          # Due to disk shortage, we build 'chrome' instead of 'all'.
          # See crbug.com/825536
          'chrome',
        ],
        'test_suites': {
          'gtest_tests': 'goma_mac_gtests',
        },
      },
      'mac-views-rel': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_fyi_gtests',
        },
        'args': [
          '--enable-features=ViewsBrowserWindows',
        ],
      },
      'Mojo Android': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
          'hard_timeout': 3600,
        },
        'os_type': 'android',
        'test_suites': {
          'gtest_tests': 'mojo_android_gtests',
        },
      },
      'Mojo ChromiumOS': {
        'additional_compile_targets': [
          'mash:all',
        ],
        'test_suites': {
          'gtest_tests': 'mojo_chromiumos_fyi_gtests',
          'isolated_scripts': 'mojo_chromiumos_isolated_scripts',
        },
      },
      'Mojo Linux': {
        'test_suites': {
          'gtest_tests': 'network_service_gtests',
          'isolated_scripts': 'mojo_network_isolated_scripts',
        },
      },
      'Mojo Windows': {
        'additional_compile_targets': [
          'mash:all',
        ],
        'test_suites': {
          'gtest_tests': 'mojo_windows_gtests',
          'isolated_scripts': 'mojo_network_isolated_scripts',
        },
      },
      'Out of Process Profiling Android': {
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'coho',
              'os': 'Android',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'Out of Process Profiling Linux': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_and_gl_gtests',
        },
      },
      'Out of Process Profiling Mac': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_fyi_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'Out of Process Profiling Windows': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
      },
      'Site Isolation Android': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
          'hard_timeout': 960,
        },
        'test_suites': {
          'gtest_tests': 'site_isolation_android_fyi_gtests',
        },
      },
      'Site Isolation Linux': {
        # TODO(lukasza, dpranke): Remove this bot once site-per-process has
        # been turned on by default for a while (e.g. once
        # https://crrev.com/c/981019 "sticks").
        # base_unittests is a placeholder
        # to keep the builder from building "all".
        'additional_compile_targets': [
          'base_unittests',
        ],
      },
      'Site Isolation Win': {
        # TODO(lukasza, dpranke): Remove this bot once site-per-process has
        # been turned on by default for a while (e.g. once
        # https://crrev.com/c/981019 "sticks").
        'test_suites': {
          'gtest_tests': 'site_isolation_win_fyi_gtests',
        },
      },
      'VR Linux': {
        'additional_compile_targets': [
          'vr_common_perftests',
          'vr_testapp',
        ],
        'test_suites': {
          'gtest_tests': 'vr_platform_specific_chromium_gtests',
        },
      },
      'WebKit Linux layout_ng Dummy Builder': {
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Ubuntu-14.04',
            },
          ],
          'hard_timeout': 900,
        },
        'test_suites': {
          'isolated_scripts': 'webkit_layout_tests_isolated_scripts',
        },
      },
      'WebKit Linux root_layer_scrolls Dummy Builder': {
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Ubuntu-14.04',
            },
          ],
          'hard_timeout': 900,
        },
        'test_suites': {
          'isolated_scripts': 'webkit_layout_tests_isolated_scripts',
        },
      },
      'WebKit Linux slimming_paint_v2 Dummy Builder': {
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Ubuntu-14.04',
            },
          ],
          'hard_timeout': 900,
        },
        'test_suites': {
          'isolated_scripts': 'webkit_layout_tests_isolated_scripts',
        },
      },
      'Win 10 Fast Ring': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
        },
        'use_swarming': False,
      },
      'Win Builder (dbg) Goma Canary': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Win Builder Goma Canary': {
        'additional_compile_targets': [
          'all',
          'pdf_fuzzers',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Win Goma Canary LocalOutputCache': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Win cl.exe Goma Canary LocalOutputCache': {
        # Build only chromium's subproject using cl.exe.
        'additional_compile_targets': [
          'v8:gn_all', 'pdfium_all', 'libANGLE',
        ],
      },
      'Win7 Builder (dbg) Goma Canary': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'Win7 Builder Goma Canary': {
        'additional_compile_targets': [
          'all',
          'pdf_fuzzers',
        ],
        'test_suites': {
          'gtest_tests': 'goma_gtests',
        },
      },
      'WinMSVC64 Goma Canary': {
        # Build only chromium's subproject using cl.exe.
        'additional_compile_targets': [
          'v8:gn_all', 'pdfium_all', 'libANGLE',
        ],
      },
      'win-annotator-rel': {
        'test_suites': {
          'scripts': 'test_traffic_annotation_auditor_script',
        }
      },
    },
  },
  {
    'name': 'chromium.linux',
    'machines': {
      'Cast Audio Linux': {
        'additional_compile_targets': [
          'cast_shell',
          'cast_test_lists',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_linux_cast_audio_gtests',
        },
      },
      'Cast Linux': {
        'additional_compile_targets': [
          'cast_shell',
          'cast_test_lists',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_linux_cast_video_gtests',
        },
      },
      'Fuchsia ARM64': {
        'additional_compile_targets': [
          'gn_all',
        ],
      },
      'Fuchsia ARM64 Cast Audio': {
        'additional_compile_targets': [
          'cast_shell',
          'cast_test_lists',
        ],
      },
      'Fuchsia x64 Cast Audio': {
        'additional_compile_targets': [
          'cast_shell',
          'cast_test_lists',
        ],
      },
      'Leak Detection Linux': {
        'test_suites': {
          'isolated_scripts': 'leak_detection_isolated_scripts',
        },
      },
      'Linux Builder': {
        'additional_compile_targets': [
          'all'
        ],
        'test_suites': {
          'scripts': 'check_network_annotations_script',
        }
      },
      'Linux Builder (dbg)': {
        'additional_compile_targets': [
          'all'
        ]
      },
      'Linux Builder (dbg)(32)': {
        'additional_compile_targets': [
          'google_apis_unittests',
          'sync_integration_tests'
        ]
      },
      'Fuchsia x64': {
        'additional_compile_targets': [
          'gn_all',
        ],
        'swarming': {
          'dimension_sets': [
            {
              'kvm': '1',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'fuchsia_gtests',
        },
      },
      'Linux Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
          'isolated_scripts': 'chromium_linux_rel_isolated_scripts',
          'scripts': 'chromium_linux_scripts',
        },
      },
      'Linux Tests (dbg)(1)': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
          'isolated_scripts': 'chromium_linux_dbg_isolated_scripts',
        },
      },
      'Linux Tests (dbg)(1)(32)': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
          'isolated_scripts': 'chromium_linux_dbg_isolated_scripts',
        },
      },
      'linux-gcc-rel': {
        'additional_compile_targets': [
          'empty_main',
        ],
      },
      'linux-jumbo-rel': {
        'additional_compile_targets': [
          'all'
        ]
      },
      'linux-ozone-rel': {
        'additional_compile_targets': [
          'chrome',
        ],
        'test_suites': {
          'gtest_tests': 'ozone_linux_gtests',
        },
      },
      'linux-xenial-rel': {
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Ubuntu-16.04',
            },
          ],
        },
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_linux_gtests',
          'isolated_scripts': 'chromium_linux_rel_isolated_scripts',
          'scripts': 'chromium_linux_scripts',
        },
      },
    },
  },
  {
    'name': 'chromium.lkgr',
    'machines': {
      'ASAN Debug': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'ASAN Debug (32-bit x86 with V8-ARM)': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'ASAN Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'ASAN Release (32-bit x86 with V8-ARM)': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'ASAN Release Media': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'ASAN Release Media (32-bit x86 with V8-ARM)': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'ChromiumOS ASAN Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'Mac ASan Debug': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'Mac ASan Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'Mac ASan Release Media': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'MSAN Release (no origins)': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'MSAN Release (chained origins)': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'TSAN Debug': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'TSAN Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'UBSan Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'UBSan vptr Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'Win ASan Release': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
      'Win ASan Release Media': {
        'additional_compile_targets': [
          'chromium_builder_asan',
        ],
      },
    },
  },
  {
    'name': 'chromium.mac',
    'machines': {
      'Mac Builder': {
        'additional_compile_targets': [
          'pdf_fuzzers',
        ],
      },
      'mac-jumbo-rel': {
        'additional_compile_targets': [
          'all'
        ]
      },
      'Mac10.10 Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'Mac10.11 Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'Mac10.12 Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'Mac10.13 Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
          'scripts': 'chromium_scripts',
        },
      },
      'Mac10.13 Tests (dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
          'isolated_scripts': 'chromium_dbg_isolated_scripts',
        },
      },
    },
  },
  {
    'name': 'chromium.memory',
    'machines': {
      'Android CFI': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
        },
        'os_type': 'android',
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'Linux ASan LSan Tests (1)': {
        'test_suites': {
          'gtest_tests': 'chromium_memory_linux_asan_gtests',
        },
        'args': [
          '--test-launcher-batch-limit=1',
          '--test-launcher-print-test-stdio=always',
        ],
      },
      'Linux ASan Tests (sandboxed)': {
        'test_suites': {
          'gtest_tests': 'sandboxed_chromium_memory_linux_gtests',
        },
      },
      'Linux CFI': {
        'test_suites': {
          'gtest_tests': 'chromium_memory_linux_asan_gtests',
        },
      },
      'Linux Chromium OS ASan LSan Tests (1)': {
        'test_suites': {
          'gtest_tests': 'chromium_memory_chromiumos_asan_gtests',
        },
      },
      'Linux ChromiumOS MSan Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_memory_chromiumos_asan_gtests',
        },
      },
      'Linux MSan Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_memory_linux_asan_gtests',
        },
      },
      'Linux TSan Tests': {
        'test_suites': {
          'gtest_tests': 'chromium_memory_linux_asan_gtests',
        },
      },
      'Mac ASan 64 Tests (1)': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_gtests',
        },
      },
    },
  },
  {
    'name': 'chromium.swarm',
    'machines': {
      'Android N5 Swarm': {
        'test_suites': {
           'gtest_tests': 'chromium_swarm_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
        },
        'os_type': 'android',
      },
      'Android N5X Swarm': {
        'test_suites': {
           'gtest_tests': 'chromium_swarm_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
          'expiration': 10800,
        },
        'os_type': 'android',
      },
      'ChromeOS Swarm': {
        'additional_compile_targets': [
          'chromiumos_preflight',
        ],
        'test_suites': {
          'isolated_scripts': 'chromeos_remote_device_isolated_tests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'kevin-signed-mpkeys',
              'os': 'ChromeOS',
            }
          ],
        },
      },
      'Linux Swarm': {
        'test_suites': {
           'gtest_tests': 'chromium_swarm_linux_gtests',
        },
      },
      'Mac Swarm': {
        'test_suites': {
           'gtest_tests': 'chromium_swarm_desktop_gtests',
        },
      },
      'Windows Swarm': {
        'test_suites': {
           'gtest_tests': 'chromium_swarm_desktop_gtests',
        },
      },
    },
  },
  {
    'name': 'chromium.webkit',
    'machines': {
      'WebKit Linux Trusty': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Linux Trusty (dbg)': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Linux Trusty ASAN': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Linux Trusty Leak': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Linux Trusty MSAN': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Mac10.10': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'gpu': 'none',
              'os': 'Mac-10.10.5',
            }
          ],
        },
      },
      'WebKit Mac10.11': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'gpu': 'none',
              'os': 'Mac-10.11.6',
            }
          ],
        },
      },
      'WebKit Mac10.11 (dbg)': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'gpu': 'none',
              'os': 'Mac-10.11.6',
            }
          ],
        },
      },
      'WebKit Mac10.12 (retina)': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '1002:6821',
              'hidpi': '1',
              'os': 'Mac-10.12.6',
              'pool': 'Chrome-GPU',
            }
          ],
        },
      },
      'WebKit Mac10.12': {
        # TODO(dpranke): Remove this builder, it is now redundant
        # w/ Mac10.13 Tests on chromium.mac
      },
      'WebKit Win x64 Builder': {
        # TODO(dpranke): Remove this builder, it is now redundant
        # w/ Win 7 Tests x64 (1) on chromium.win.
        'additional_compile_targets': [
          'base_unittests',
        ],
      },
      'WebKit Win x64 Builder (dbg)': {
        # TODO(dpranke): Remove this builder, it is now redundant
        # w/ Win 7 Tests x64 (1)(dbg) on chromium.win.
        'additional_compile_targets': [
          'base_unittests',
        ],
      },
      'WebKit Win10': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Win7': {
        'test_suites': {
          'isolated_scripts': 'chromium_webkit_isolated_scripts',
        },
      },
      'WebKit Win7 (dbg)': {
        # TODO(dpranke): Remove this builder, it is now redundant
        # w/ Win 7 Tests (1)(dbg) on chromium.win.
        'additional_compile_targets': [
          'base_unittests',
        ],
      },
    },
  },
  {
    'name': 'chromium.webrtc',
    'machines': {
      'Linux Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
      'Mac Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
      'Win Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
    },
  },
  {
    'name': 'chromium.webrtc.fyi',
    'machines': {
      'Android Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
      'Android Builder (dbg)': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
      'Android Builder ARM64 (dbg)': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
      'Linux Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'Linux Builder (dbg)': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'Mac Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
      'Mac Builder (dbg)': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'Win Builder': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'Win Builder (dbg)': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'frame_analyzer',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
    },
  },
  {
    'name': 'chromium.win',
    'machines': {
      'Win Builder': {
        'additional_compile_targets': [
          'pdf_fuzzers'
        ],
        'test_suites': {
          'scripts': 'check_network_annotations_script',
        },
      },
      'win-jumbo-rel': {
        'additional_compile_targets': [
          'all'
        ]
      },
      'Win 7 Tests x64 (1)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'Win10 Tests x64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
          'isolated_scripts': 'win_specific_isolated_scripts',
        },
      },
      'Win7 (32) Tests': {
        'test_suites': {
          'gtest_tests': 'win7_32_bit_gtests',
        }
      },
      'Win7 Tests (1)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
          'scripts': 'chromium_scripts',
        },
      },
      'Win7 Tests (dbg)(1)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
          'isolated_scripts': 'chromium_dbg_isolated_scripts',
        },
      },
      'Win10 Tests x64 (dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_gtests',
          'isolated_scripts': 'chromium_dbg_isolated_scripts',
        },
      },
    },
  },
  {
    'name': 'client.v8.chromium',
    'machines': {
      'Linux - Future': {
        'test_suites': {
          'gtest_tests': 'client_v8_chromium_gtests',
          'isolated_scripts': 'client_v8_chromium_isolated_scripts',
        },
      },
      'Linux - Future (dbg)': {
        'test_suites': {
          'gtest_tests': 'client_v8_chromium_gtests',
          'isolated_scripts': 'client_v8_chromium_isolated_scripts',
        },
      },
    },
  },
  {
    'name': 'client.v8.branches',
    'machines': {},
  },
  {
    'name': 'client.v8.fyi',
    'machines': {
      'Android V8 FYI Release (Nexus 5X)': {
        'browser_config': 'android-chromium',
        'os_type': 'android',
        'skip_merge_script': True,
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
              'os': 'Android',
            },
          ],
        },
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_common_telemetry_tests',
        },
      },
      'Linux V8 FYI Release (NVIDIA)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_v8_desktop_telemetry_tests',
        },
      },
      'Linux V8 FYI Release - concurrent marking (NVIDIA)': {
        'os_type': 'linux',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # LINUX_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-384.90',
              'os': 'Ubuntu',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_v8_desktop_telemetry_tests',
        },
      },
      'Mac V8 FYI Release (Intel)': {
        'browser_config': 'release',
        'os_type': 'mac',
        'swarming': {
          'dimension_sets': [
            {
              'gpu': '8086:0a2e',
              'os': 'Mac-10.12.6',
            },
          ],
        },
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_v8_desktop_telemetry_tests',
        },
      },
      'V8 Android GN (dbg)': {
        'additional_compile_targets': [
          'chrome_public_apk'
        ],
      },
      'V8 Linux GN': {
        'additional_compile_targets': [
          'accessibility_unittests',
          'aura_unittests',
          'browser_tests',
          'cacheinvalidation_unittests',
          'capture_unittests',
          'cast_unittests',
          'cc_unittests',
          'chromedriver_unittests',
          'components_browsertests',
          'components_unittests',
          'content_browsertests',
          'content_unittests',
          'crypto_unittests',
          'dbus_unittests',
          'device_unittests',
          'display_unittests',
          'events_unittests',
          'extensions_browsertests',
          'extensions_unittests',
          'gcm_unit_tests',
          'gfx_unittests',
          'gn_unittests',
          'google_apis_unittests',
          'gpu_unittests',
          'interactive_ui_tests',
          'ipc_tests',
          'jingle_unittests',
          'media_unittests',
          'media_blink_unittests',
          'mojo_unittests',
          'nacl_loader_unittests',
          'net_unittests',
          'pdf_unittests',
          'ppapi_unittests',
          'printing_unittests',
          'remoting_unittests',
          'sandbox_linux_unittests',
          'skia_unittests',
          'sql_unittests',
          'storage_unittests',
          'sync_integration_tests',
          'ui_base_unittests',
          'ui_touch_selection_unittests',
          'unit_tests',
          'url_unittests',
          'views_unittests',
          'wm_unittests',
        ],
      },
      'Win V8 FYI Release (NVIDIA)': {
        'os_type': 'win',
        'browser_config': 'release',
        'swarming': {
          'dimension_sets': [
            {
              # TODO(kbr): cut this bot over to Win10, coordinating with
              # V8 team.
              # WIN7_NVIDIA_QUADRO_P400_STABLE_DRIVER
              'gpu': '10de:1cb3-23.21.13.8792',
              # WIN7_NVIDIA_QUADRO_P400_STABLE_OS
              'os': 'Windows-2008ServerR2-SP1',
              'pool': 'Chrome-GPU',
            },
          ],
        },
        'test_suites': {
          'gpu_telemetry_tests': 'gpu_v8_desktop_telemetry_tests',
        },
      },
    },
  },
  {
    'name': 'tryserver.webrtc',
    'machines': {
      'win_chromium_compile': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'mac_chromium_compile': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'linux_chromium_compile': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
          'remoting/webapp:webapp',
        ],
      },
      'android_chromium_compile': {
        'additional_compile_targets': [
          'browser_tests',
          'capture_unittests',
          'content_browsertests',
          'content_unittests',
          'jingle_unittests',
          'remoting_unittests',
        ],
      },
    },
  },
]
