# 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_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_type': 'android',
      },
      'Android Cronet KitKat Builder': {
        'test_suites': {
          'gtest_tests': 'cronet_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
            },
          ],
        },
        '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_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_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_type': 'android',
      },
      'KitKat Phone Tester (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_type': 'android',
      },
      'KitKat Tablet Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84Z',
              'device_type': 'flo',
            },
          ],
          'expiration': 10800,
        },
        'os_type': 'android',
      },
      'Lollipop Phone Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'LMY48I',
              'device_type': 'hammerhead',
            },
          ],
          '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',
            },
          ],
          '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',
            },
          ],
          'hard_timeout': 960,
        },
        'os_type': 'android',
      },
      'Marshmallow Phone Tester (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_type': 'android',
      },
      'Marshmallow Tablet Tester': {
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MRA58Z',
              'device_type': 'flo',
            },
          ],
          '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',
            },
          ],
          '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_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_type': 'android',
      },
      'Memory Infra Tester': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'KTU84P',
              'device_type': 'hammerhead',
            },
          ],
          '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',
            },
          ],
          '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_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_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_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_clang_and_gl_gtests',
        },
      },
      'CFI Linux ToT': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_clang_and_gl_gtests',
        },
      },
      'CrWinAsan': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'CrWinAsan(dll)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'CrWinAsanCov': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'CrWinClangLLD': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'CrWinClangLLD64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'CrWinClngLLD64dbg': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'CrWinClngLLDdbg': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTAndroid': {
        'additional_compile_targets': [
          'all',
        ],
        # This mirrors 'KitKat Phone Tester (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_type': 'android',
      },
      'ToTAndroid x64': {
        'swarming': {
          'dimension_sets': [
            {
              'device_type': 'coho',
            },
          ],
        },
        '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',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'ToTLinux': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_clang_gtests',
          'scripts': 'check_gn_headers_script',
        },
      },
      'ToTLinux (dbg)': {
        'additional_compile_targets': [
          'all',
        ],
      },
      'ToTLinuxASan': {
        'additional_compile_targets': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'chromium_linux_clang_gtests',
        },
      },
      'ToTLinuxMSan': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_clang_gtests',
        },
      },
      'ToTLinuxThinLTO': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_clang_and_gl_gtests',
        },
        'use_swarming': False,
      },
      '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_clang_gtests',
        },
      },
      'ToTMac': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_clang_gtests',
          'isolated_scripts': 'chromium_rel_isolated_scripts',
        },
      },
      'ToTMacASan': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_clang_gtests',
        },
      },
      'ToTWin': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWin(dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWin(dll)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWin64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWin64(dbg)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWin64(dll)': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWinCFI': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWinCFI64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWinLibcxx64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'ToTWinThinLTO64': {
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'linux-win_cross-rel': {
        'swarming': {
          'dimension_sets': [
            {
              'os': 'Windows-10',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'UBSanVptr Linux': {
        'test_suites': {
          # no "_and_gl":gl_unittests doesn't pass yet,
          # crbug.com/https://crbug.com/815183
          'gtest_tests': 'chromium_linux_clang_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.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_clang_and_gl_gtests',
        },
      },
      'CFI Linux ToT': {
        'test_suites': {
          'gtest_tests': 'chromium_linux_clang_and_gl_gtests',
        },
      },
      'linux-annotator-rel': {
        'test_suites': {
          'scripts': 'test_traffic_annotation_auditor_script',
        }
      },
      'mac-views-rel': {
        'test_suites': {
          'gtest_tests': 'chromium_mac_fyi_gtests',
        },
        'args': [
          '--enable-features=ViewsBrowserWindows',
        ],
      },
      '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',
        },
      },
      '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-blink-gen-property-trees': {
        'test_suites': {
          'isolated_scripts': 'webkit_layout_tests_isolated_scripts',
        },
        'args': [
          '--additional-driver-flag=--enable-blink-gen-property-trees',
        ],
      },
      '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': [
          'all',
        ],
        'test_suites': {
          'gtest_tests': 'goma_mac_gtests',
        },
      },
      'Mojo Android': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
            },
          ],
          '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',
            },
          ],
        },
        'test_suites': {
          'gtest_tests': 'chromium_android_gtests',
        },
      },
      'Out of Process Profiling Linux': {
        'test_suites': {
          # TODO(kbr): it's weird that this has the most in common with the
          # clang testers' test suites.
          'gtest_tests': 'chromium_linux_clang_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': {
          # TODO(kbr): it's weird that this has the most in common with the
          # clang testers' test suites.
          'gtest_tests': 'chromium_win_clang_gtests',
        },
      },
      'Site Isolation Android': {
        'swarming': {
          'dimension_sets': [
            {
              'device_os': 'MMB29Q',
              'device_type': 'bullhead',
            },
          ],
          '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_non_clang_win_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': {
          # TODO(kbr): it's weird that this has the most in common with the
          # clang testers' test suites.
          'gtest_tests': 'chromium_win_10_fast_ring_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',
        ],
      },
      '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',
            },
          ],
        },
      },
    },
  },
  {
    '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_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_memory_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',
            },
          ],
          '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',
            },
          ],
          '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': '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',
        ],
      },
    },
  },
]
