diff --git a/infra/config/generated/project.pyl b/infra/config/generated/project.pyl deleted file mode 100644 index df001db8e9..0000000000 --- a/infra/config/generated/project.pyl +++ /dev/null @@ -1,3 +0,0 @@ -# This is a non-LUCI generated file -# This is consumed by infra/specs presubmit checks to validate the config -{"validate_source_side_specs_have_builder": False} diff --git a/infra/specs/PRESUBMIT.py b/infra/specs/PRESUBMIT.py index df6966561a..883e26844f 100644 --- a/infra/specs/PRESUBMIT.py +++ b/infra/specs/PRESUBMIT.py @@ -6,8 +6,6 @@ # in the file PATENTS. All contributing project authors may # be found in the AUTHORS file in the root of the source tree. -import os - def _HasLocalChanges(input_api): ret = input_api.subprocess.call(['git', 'diff', '--quiet']) @@ -33,34 +31,13 @@ def CheckPatchFormatted(input_api, output_api): return results -def CheckSourceSideSpecs(input_api, output_api): - d = os.path.dirname - angle_root = d(d(input_api.PresubmitLocalPath())) - gen_script = os.path.join(angle_root, 'testing', 'buildbot', - 'generate_buildbot_json.py') - - commands = [ - input_api.Command(name='generate_buildbot_json', - cmd=[ - input_api.python_executable, gen_script, '--check', - '--verbose', '--pyl-files-dir', - input_api.PresubmitLocalPath() - ], - kwargs={}, - message=output_api.PresubmitError), - ] - return input_api.RunTests(commands) - - def CheckChangeOnUpload(input_api, output_api): results = [] results.extend(CheckPatchFormatted(input_api, output_api)) - results.extend(CheckSourceSideSpecs(input_api, output_api)) return results def CheckChangeOnCommit(input_api, output_api): results = [] results.extend(CheckPatchFormatted(input_api, output_api)) - results.extend(CheckSourceSideSpecs(input_api, output_api)) return results diff --git a/infra/specs/client.webrtc.json b/infra/specs/client.webrtc.json index 1ae5934727..a5865495bc 100644 --- a/infra/specs/client.webrtc.json +++ b/infra/specs/client.webrtc.json @@ -337,7 +337,7 @@ "dimension_sets": [ { "cpu": "x86-64", - "os": "Ubuntu", + "os": "Ubuntu-18.04", "pool": "WebRTC-baremetal" } ] @@ -409,414 +409,5 @@ "test_id_prefix": "ninja://:webrtc_nonparallel_tests/" } ] - }, - "Win32 Release (Clang)": { - "isolated_scripts": [ - { - "isolate_name": "audio_decoder_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "audio_decoder_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://modules/audio_coding:audio_decoder_unittests/" - }, - { - "isolate_name": "common_audio_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "common_audio_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://common_audio:common_audio_unittests/" - }, - { - "isolate_name": "common_video_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "common_video_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://common_video:common_video_unittests/" - }, - { - "isolate_name": "dcsctp_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "dcsctp_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://net/dcsctp:dcsctp_unittests/" - }, - { - "isolate_name": "low_bandwidth_audio_test", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "low_bandwidth_audio_test", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://audio:low_bandwidth_audio_test/" - }, - { - "isolate_name": "modules_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "modules_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ], - "shards": 2 - }, - "test_id_prefix": "ninja://modules:modules_tests/" - }, - { - "isolate_name": "modules_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "modules_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ], - "shards": 6 - }, - "test_id_prefix": "ninja://modules:modules_unittests/" - }, - { - "isolate_name": "peerconnection_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "peerconnection_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ], - "shards": 4 - }, - "test_id_prefix": "ninja://pc:peerconnection_unittests/" - }, - { - "isolate_name": "rtc_media_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_media_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://media:rtc_media_unittests/" - }, - { - "isolate_name": "rtc_pc_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_pc_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://pc:rtc_pc_unittests/" - }, - { - "isolate_name": "rtc_stats_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_stats_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://stats:rtc_stats_unittests/" - }, - { - "isolate_name": "rtc_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ], - "shards": 6 - }, - "test_id_prefix": "ninja://:rtc_unittests/" - }, - { - "isolate_name": "system_wrappers_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "system_wrappers_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://system_wrappers:system_wrappers_unittests/" - }, - { - "isolate_name": "test_support_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "test_support_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://test:test_support_unittests/" - }, - { - "isolate_name": "tools_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "tools_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://rtc_tools:tools_unittests/" - }, - { - "isolate_name": "video_capture_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "video_capture_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows", - "pool": "WebRTC-baremetal" - } - ] - }, - "test_id_prefix": "ninja://modules/video_capture:video_capture_tests/" - }, - { - "isolate_name": "video_engine_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "video_engine_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ], - "shards": 4 - }, - "test_id_prefix": "ninja://:video_engine_tests/" - }, - { - "isolate_name": "voip_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "voip_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://:voip_unittests/" - }, - { - "isolate_name": "webrtc_nonparallel_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "webrtc_nonparallel_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Windows-7-SP1" - } - ] - }, - "test_id_prefix": "ninja://:webrtc_nonparallel_tests/" - } - ] } } diff --git a/infra/specs/generate_buildbot_json.py b/infra/specs/generate_buildbot_json.py index aa0375198f..d625580739 100755 --- a/infra/specs/generate_buildbot_json.py +++ b/infra/specs/generate_buildbot_json.py @@ -10,9 +10,8 @@ ADDITIONAL_MIXINS dictonary. Calls Chromium's generate_buildbot_json. """ -import ast +import json import os -import subprocess import sys _SCRIPT_DIR = os.path.dirname(os.path.realpath(__file__)) @@ -23,7 +22,13 @@ sys.path.insert(0, os.path.join(_SRC_DIR, 'testing', 'buildbot')) from testing.buildbot import generate_buildbot_json # Add custom mixins here. -WEBRTC_MIXIN_FILE_NAME = os.path.join(_SCRIPT_DIR, 'mixins_webrtc.pyl') +ADDITIONAL_MIXINS = { + 'result_adapter': { + 'resultdb': { + 'result_format': 'json' + }, + }, +} MIXIN_FILE_NAME = os.path.join(_SCRIPT_DIR, 'mixins.pyl') MIXINS_PYL_TEMPLATE = """\ # GENERATED FILE - DO NOT EDIT. @@ -42,47 +47,41 @@ MIXINS_PYL_TEMPLATE = """\ """ -def generate_mixins_file_from_used_mixins(generator): +def main(): chromium_args = generate_buildbot_json.BBJSONGenerator.parse_args(argv=None) chromium_generator = generate_buildbot_json.BBJSONGenerator(chromium_args) chromium_generator.load_configuration_files() - seen_mixins = set() - for waterfall in generator.waterfalls: - seen_mixins = seen_mixins.union(waterfall.get('mixins', set())) - for bot_name, tester in waterfall['machines'].items(): - del bot_name - seen_mixins = seen_mixins.union(tester.get('mixins', set())) - for suite in generator.test_suites.values(): - for test in suite.values(): - seen_mixins = seen_mixins.union(test.get('mixins', set())) - - found_mixins = ast.literal_eval(open(WEBRTC_MIXIN_FILE_NAME).read()) - for mixin in seen_mixins: - if mixin not in found_mixins: - found_mixins[mixin] = chromium_generator.mixins[mixin] - elif mixin in chromium_generator.mixins: - assert False, '"%s" is already defined in Chromium\'s mixins.pyl' % mixin - - format_data = { - 'script_name': os.path.basename(__file__), - 'data_source': 'mixins_webrtc.pyl and Chromium\'s mixins.pyl', - 'mixin_data': dict(sorted(found_mixins.items())), - } - with open(MIXIN_FILE_NAME, 'w') as f: - f.write(MIXINS_PYL_TEMPLATE.format(**format_data)) - - return subprocess.call(['yapf', '-i', MIXIN_FILE_NAME]) - - -def main(): override_args = ['--pyl-files-dir', _SCRIPT_DIR] webrtc_args = generate_buildbot_json.BBJSONGenerator.parse_args(override_args) webrtc_generator = generate_buildbot_json.BBJSONGenerator(webrtc_args) webrtc_generator.load_configuration_files() webrtc_generator.resolve_configuration_files() - generate_mixins_file_from_used_mixins(webrtc_generator) + seen_mixins = set() + for waterfall in webrtc_generator.waterfalls: + seen_mixins = seen_mixins.union(waterfall.get('mixins', set())) + for bot_name, tester in waterfall['machines'].items(): + del bot_name + seen_mixins = seen_mixins.union(tester.get('mixins', set())) + for suite in webrtc_generator.test_suites.values(): + for test in suite.values(): + seen_mixins = seen_mixins.union(test.get('mixins', set())) + + found_mixins = ADDITIONAL_MIXINS.copy() + for mixin in seen_mixins: + if mixin not in found_mixins: + found_mixins[mixin] = chromium_generator.mixins[mixin] + + format_data = { + 'script_name': os.path.basename(__file__), + 'data_source': 'waterfall.pyl and Chromium\'s mixins.pyl', + 'mixin_data': json.dumps(dict(sorted(found_mixins.items())), indent=2), + } + with open(MIXIN_FILE_NAME, 'w') as f: + f.write(MIXINS_PYL_TEMPLATE.format(**format_data)) + f.close() + return webrtc_generator.main() diff --git a/infra/specs/mixins.pyl b/infra/specs/mixins.pyl index 17e2e3b992..b14cc2fd4c 100644 --- a/infra/specs/mixins.pyl +++ b/infra/specs/mixins.pyl @@ -1,6 +1,6 @@ # GENERATED FILE - DO NOT EDIT. # Generated by generate_buildbot_json.py using data from -# mixins_webrtc.pyl and Chromium's mixins.pyl +# waterfall.pyl and Chromium's mixins.pyl # # Copyright (c) 2022 The WebRTC project authors. All Rights Reserved. # @@ -11,67 +11,22 @@ # be found in the AUTHORS file in the root of the source tree. { - 'baremetal-pool': { - 'swarming': { - 'dimensions': { - 'pool': 'WebRTC-baremetal' + "linux-bionic": { + "swarming": { + "dimensions": { + "os": "Ubuntu-18.04" } } }, - 'baremetal-try-pool': { - 'swarming': { - 'dimensions': { - 'pool': 'WebRTC-baremetal-try' - } + "result_adapter": { + "resultdb": { + "result_format": "json" } }, - 'linux': { - 'swarming': { - 'dimensions': { - 'os': 'Ubuntu' - } - } - }, - 'linux-bionic': { - 'swarming': { - 'dimensions': { - 'os': 'Ubuntu-18.04' - } - } - }, - 'quick-perf-tests': { - 'args': [ - '--force_fieldtrials=WebRTC-QuickPerfTest/Enabled/', '--nologs', - '--gtest_output=json:${ISOLATED_OUTDIR}/gtest_output.json' - ], - 'resultdb': { - 'result_format': 'gtest_json', - 'result_file': '${ISOLATED_OUTDIR}/gtest_output.json' - } - }, - 'resultdb-json-format': { - 'resultdb': { - 'result_format': 'json' - } - }, - 'win': { - 'swarming': { - 'dimensions': { - 'os': 'Windows' - } - } - }, - 'win7': { - 'swarming': { - 'dimensions': { - 'os': 'Windows-7-SP1' - } - } - }, - 'x86-64': { - 'swarming': { - 'dimensions': { - 'cpu': 'x86-64' + "x86-64": { + "swarming": { + "dimensions": { + "cpu": "x86-64" } } } diff --git a/infra/specs/mixins_webrtc.pyl b/infra/specs/mixins_webrtc.pyl deleted file mode 100644 index f5a8af29b1..0000000000 --- a/infra/specs/mixins_webrtc.pyl +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (c) 2022 The WebRTC project authors. All Rights Reserved. -# -# Use of this source code is governed by a BSD-style license -# that can be found in the LICENSE file in the root of the source -# tree. An additional intellectual property rights grant can be found -# in the file PATENTS. All contributing project authors may -# be found in the AUTHORS file in the root of the source tree. - -{ - 'baremetal-pool': { - 'swarming': { - 'dimensions': { - 'pool': 'WebRTC-baremetal', - }, - }, - }, - 'baremetal-try-pool': { - 'swarming': { - 'dimensions': { - 'pool': 'WebRTC-baremetal-try', - }, - }, - }, - 'quick-perf-tests': { - 'args': [ - '--force_fieldtrials=WebRTC-QuickPerfTest/Enabled/', - '--nologs', - '--gtest_output=json:${ISOLATED_OUTDIR}/gtest_output.json', - ], - 'resultdb': { - 'result_format': 'gtest_json', - 'result_file': '${ISOLATED_OUTDIR}/gtest_output.json', - }, - }, - 'linux': { - 'swarming': { - 'dimensions': { - 'os': 'Ubuntu' - } - } - }, - 'resultdb-json-format': { - 'resultdb': { - 'result_format': 'json' - } - }, - 'win': { - 'swarming': { - 'dimensions': { - 'os': 'Windows' - } - } - }, -} diff --git a/infra/specs/test_suites.pyl b/infra/specs/test_suites.pyl index aea352b674..0b3a829fd1 100644 --- a/infra/specs/test_suites.pyl +++ b/infra/specs/test_suites.pyl @@ -48,44 +48,46 @@ 'voip_unittests': {}, 'webrtc_nonparallel_tests': {}, }, - 'video_capture_tests_linux': { + 'video_capture_tests_baremetal': { + # Run video_capture_tests on the baremetal pool for the video camera. 'video_capture_tests': { - 'remove_mixins': ['linux-bionic'], - 'mixins': ['linux', 'baremetal-pool'], + 'swarming': { + 'dimension_sets': [{ + 'pool': 'WebRTC-baremetal' + }], + }, } }, - 'video_capture_tests_linux_tryserver': { - 'video_capture_tests': { - 'remove_mixins': ['linux-bionic'], - 'mixins': ['linux', 'baremetal-try-pool'], - } - }, - 'video_capture_tests_win': { - 'video_capture_tests': { - 'remove_mixins': ['win7'], - 'mixins': ['win', 'baremetal-pool'], - } - }, - 'webrtc_perf_tests_linux_tryserver': { + 'webrtc_perf_tests_baremetal': { + # Run webrtc_perf_tests on the baremetal pool to test the WebRTC machines. 'webrtc_perf_tests': { - 'remove_mixins': ['linux-bionic', 'resultdb-json-format'], - 'mixins': ['linux', 'baremetal-try-pool', 'quick-perf-tests'], + 'args': [ + '--force_fieldtrials=WebRTC-QuickPerfTest/Enabled/', + '--nologs', + '--gtest_output=json:${ISOLATED_OUTDIR}/gtest_output.json', + ], + 'remove_mixins': ['result_adapter'], + 'resultdb': { + 'result_format': 'gtest_json', + 'result_file': '${ISOLATED_OUTDIR}/gtest_output.json', + }, + 'swarming': { + 'dimension_sets': [{ + 'pool': 'WebRTC-baremetal' + }], + }, } }, }, 'compound_suites': { - 'desktop_tests_linux': [ + 'desktop_and_video_capture_tests': [ 'desktop_tests', - 'video_capture_tests_linux', + 'video_capture_tests_baremetal', ], - 'desktop_tests_linux_tryserver': [ + 'desktop_and_video_capture_and_webrtc_perf_tests': [ 'desktop_tests', - 'video_capture_tests_linux_tryserver', - 'webrtc_perf_tests_linux_tryserver', - ], - 'desktop_tests_win': [ - 'desktop_tests', - 'video_capture_tests_win', + 'video_capture_tests_baremetal', + 'webrtc_perf_tests_baremetal', ], }, } diff --git a/infra/specs/trybot_analyze_config.json b/infra/specs/trybot_analyze_config.json index 4489a7d5dd..b0e2f8eb18 100644 --- a/infra/specs/trybot_analyze_config.json +++ b/infra/specs/trybot_analyze_config.json @@ -1,5 +1,5 @@ { - "base": { + "webrtc": { "exclusions": [ "DEPS", "infra/specs/.*" diff --git a/infra/specs/tryserver.webrtc.json b/infra/specs/tryserver.webrtc.json deleted file mode 100644 index 625a6a641d..0000000000 --- a/infra/specs/tryserver.webrtc.json +++ /dev/null @@ -1,441 +0,0 @@ -{ - "AAAAA1 AUTOGENERATED FILE DO NOT EDIT": {}, - "AAAAA2 See generate_buildbot_json.py to make changes": {}, - "linux_rel": { - "isolated_scripts": [ - { - "isolate_name": "audio_decoder_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "audio_decoder_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://modules/audio_coding:audio_decoder_unittests/" - }, - { - "isolate_name": "common_audio_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "common_audio_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://common_audio:common_audio_unittests/" - }, - { - "isolate_name": "common_video_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "common_video_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://common_video:common_video_unittests/" - }, - { - "isolate_name": "dcsctp_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "dcsctp_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://net/dcsctp:dcsctp_unittests/" - }, - { - "isolate_name": "low_bandwidth_audio_test", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "low_bandwidth_audio_test", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://audio:low_bandwidth_audio_test/" - }, - { - "isolate_name": "modules_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "modules_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ], - "shards": 2 - }, - "test_id_prefix": "ninja://modules:modules_tests/" - }, - { - "isolate_name": "modules_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "modules_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ], - "shards": 6 - }, - "test_id_prefix": "ninja://modules:modules_unittests/" - }, - { - "isolate_name": "peerconnection_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "peerconnection_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ], - "shards": 4 - }, - "test_id_prefix": "ninja://pc:peerconnection_unittests/" - }, - { - "isolate_name": "rtc_media_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_media_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://media:rtc_media_unittests/" - }, - { - "isolate_name": "rtc_pc_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_pc_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://pc:rtc_pc_unittests/" - }, - { - "isolate_name": "rtc_stats_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_stats_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://stats:rtc_stats_unittests/" - }, - { - "isolate_name": "rtc_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "rtc_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ], - "shards": 6 - }, - "test_id_prefix": "ninja://:rtc_unittests/" - }, - { - "isolate_name": "system_wrappers_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "system_wrappers_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://system_wrappers:system_wrappers_unittests/" - }, - { - "isolate_name": "test_support_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "test_support_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://test:test_support_unittests/" - }, - { - "isolate_name": "tools_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "tools_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://rtc_tools:tools_unittests/" - }, - { - "isolate_name": "video_capture_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "video_capture_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu", - "pool": "WebRTC-baremetal-try" - } - ] - }, - "test_id_prefix": "ninja://modules/video_capture:video_capture_tests/" - }, - { - "isolate_name": "video_engine_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "video_engine_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ], - "shards": 4 - }, - "test_id_prefix": "ninja://:video_engine_tests/" - }, - { - "isolate_name": "voip_unittests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "voip_unittests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://:voip_unittests/" - }, - { - "isolate_name": "webrtc_nonparallel_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "webrtc_nonparallel_tests", - "resultdb": { - "result_format": "json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu-18.04" - } - ] - }, - "test_id_prefix": "ninja://:webrtc_nonparallel_tests/" - }, - { - "args": [ - "--force_fieldtrials=WebRTC-QuickPerfTest/Enabled/", - "--nologs", - "--gtest_output=json:${ISOLATED_OUTDIR}/gtest_output.json" - ], - "isolate_name": "webrtc_perf_tests", - "merge": { - "args": [], - "script": "//testing/merge_scripts/standard_isolated_script_merge.py" - }, - "name": "webrtc_perf_tests", - "resultdb": { - "result_file": "${ISOLATED_OUTDIR}/gtest_output.json", - "result_format": "gtest_json" - }, - "swarming": { - "can_use_on_swarming_builders": true, - "dimension_sets": [ - { - "cpu": "x86-64", - "os": "Ubuntu", - "pool": "WebRTC-baremetal-try" - } - ] - }, - "test_id_prefix": "ninja://:webrtc_perf_tests/" - } - ] - } -} diff --git a/infra/specs/waterfalls.pyl b/infra/specs/waterfalls.pyl index 9ba64b4936..55c18e708c 100644 --- a/infra/specs/waterfalls.pyl +++ b/infra/specs/waterfalls.pyl @@ -13,29 +13,9 @@ 'machines': { 'Linux64 Release': { 'os_type': 'linux', - 'mixins': ['linux-bionic', 'x86-64', 'resultdb-json-format'], + 'mixins': ['linux-bionic', 'x86-64', 'result_adapter'], 'test_suites': { - 'isolated_scripts': 'desktop_tests_linux', - }, - }, - 'Win32 Release (Clang)': { - 'os_type': 'win', - 'mixins': ['win7', 'x86-64', 'resultdb-json-format'], - 'test_suites': { - 'isolated_scripts': 'desktop_tests_win', - }, - }, - }, - }, - { - 'name': 'tryserver.webrtc', - 'mixins': [], - 'machines': { - 'linux_rel': { - 'os_type': 'linux', - 'mixins': ['linux-bionic', 'x86-64', 'resultdb-json-format'], - 'test_suites': { - 'isolated_scripts': 'desktop_tests_linux_tryserver', + 'isolated_scripts': 'desktop_and_video_capture_tests', }, }, },