Bug 1873723 - Run browsertime tests on beta/release with a cron. r=perftest-reviewers,taskgraph-reviewers,kshampur,jcristau DONTBUILD

This patch modifies the weekly release, and daily beta crons to run the browsertime desktop tests. The crons will also be scheduled at a different time now to be more in line with commits that run tests. At the same time, some of the other crons are modified to use a single method for checking if a platform is a desktop platform that can have tests running on it (similar to what we do for android).

Differential Revision: https://phabricator.services.mozilla.com/D201250
This commit is contained in:
Greg Mierzwinski 2024-02-12 18:29:00 +00:00
Родитель 82f8f12025
Коммит 7473bdc29f
2 изменённых файлов: 69 добавлений и 25 удалений

Просмотреть файл

@ -232,7 +232,7 @@ jobs:
run-on-projects:
- mozilla-beta
when:
- {hour: 16, minute: 0}
- {hour: 12, minute: 0}
- name: weekly-release-perf
job:
@ -243,7 +243,7 @@ jobs:
run-on-projects:
- mozilla-release
when:
- {weekday: 'Friday', hour: 16, minute: 0}
- {weekday: 'Friday', hour: 12, minute: 0}
- name: raptor-tp6m
job:

Просмотреть файл

@ -252,6 +252,20 @@ def accept_raptor_android_build(platform):
return False
if "a51" in platform:
return True
return False
def accept_raptor_desktop_build(platform):
"""Helper function for selecting correct desktop raptor builds."""
if "android" in platform:
return False
# ignore all windows 7 perf jobs scheduled automatically
if "windows7" in platform or "windows10-32" in platform:
return False
# Completely ignore all non-shippable platforms
if "shippable" in platform:
return True
return False
def filter_unsupported_artifact_builds(task, parameters):
@ -759,16 +773,10 @@ def target_tasks_custom_car_perf_testing(full_task_graph, parameters, graph_conf
try_name = attributes.get("raptor_try_name")
# Completely ignore all non-shippable platforms
if "shippable" not in platform:
return False
# ignore all windows 7 perf jobs scheduled automatically
if "windows10-32" in platform:
return False
# Desktop and Android selection for CaR
if "android" not in platform or accept_raptor_android_build(platform):
if accept_raptor_desktop_build(platform) or accept_raptor_android_build(
platform
):
if "browsertime" in try_name and (
"custom-car" in try_name or "cstm-car-m" in try_name
):
@ -792,14 +800,6 @@ def target_tasks_general_perf_testing(full_task_graph, parameters, graph_config)
try_name = attributes.get("raptor_try_name")
# Completely ignore all non-shippable platforms
if "shippable" not in platform:
return False
# ignore all windows 7 perf jobs scheduled automatically
if "windows7" in platform or "windows10-32" in platform:
return False
if "tp6-bench" in try_name:
return False
@ -808,7 +808,7 @@ def target_tasks_general_perf_testing(full_task_graph, parameters, graph_config)
return False
# Desktop selection
if "android" not in platform:
if accept_raptor_desktop_build(platform):
# Select some browsertime tasks as desktop smoke-tests
if "browsertime" in try_name:
if "chrome" in try_name:
@ -914,9 +914,9 @@ def target_tasks_speedometer_tests(full_task_graph, parameters, graph_config):
if attributes.get("unittest_suite") != "raptor":
return False
if (
"android" not in platform and "windows10-32" not in platform
) or accept_raptor_android_build(platform):
if accept_raptor_desktop_build(platform) or accept_raptor_android_build(
platform
):
try_name = attributes.get("raptor_try_name")
if (
"browsertime" in try_name
@ -1245,8 +1245,30 @@ def target_tasks_daily_beta_perf(full_task_graph, parameters, graph_config):
if attributes.get("unittest_suite") != "raptor":
return False
if not platform:
return False
if platform and accept_raptor_android_build(platform):
if accept_raptor_desktop_build(platform):
if "browsertime" and "firefox" in try_name:
if "profiling" in try_name:
return False
if "bytecode" in try_name:
return False
if "live" in try_name:
return False
if "webext" in try_name:
return False
if "unity" in try_name:
return False
if "wasm" in try_name:
return False
if "tp6-bench" in try_name:
return False
if "tp6" in try_name:
return True
if "benchmark" in try_name:
return True
elif accept_raptor_android_build(platform):
# Select browsertime & geckoview specific tests
if "browsertime" and "geckoview" in try_name:
if "power" in try_name:
@ -1282,8 +1304,30 @@ def target_tasks_weekly_release_perf(full_task_graph, parameters, graph_config):
if attributes.get("unittest_suite") != "raptor":
return False
if not platform:
return False
if platform and accept_raptor_android_build(platform):
if accept_raptor_desktop_build(platform):
if "browsertime" and "firefox" in try_name:
if "power" in try_name:
return False
if "profiling" in try_name:
return False
if "bytecode" in try_name:
return False
if "live" in try_name:
return False
if "webext" in try_name:
return False
if "tp6-bench" in try_name:
return False
if "tp6" in try_name:
return True
if "benchmark" in try_name:
return True
if "youtube-playback" in try_name:
return True
elif accept_raptor_android_build(platform):
# Select browsertime & geckoview specific tests
if "browsertime" and "geckoview" in try_name:
if "power" in try_name: