# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Definitions of builders in the tryserver.chromium.linux builder group."""
load("//lib/branches.star", "branches")
load("//lib/builder_config.star", "builder_config")
load("//lib/builders.star", "os", "siso")
load("//lib/consoles.star", "consoles")
load("//lib/gn_args.star", "gn_args")
load("//lib/html.star", "linkify_builder")
load("//lib/try.star", "try_")
load("//project.star", "settings")
try_.defaults.set(
executable = try_.DEFAULT_EXECUTABLE,
builder_group = "tryserver.chromium.linux",
pool = try_.DEFAULT_POOL,
cores = 8,
os = os.LINUX_DEFAULT,
compilator_cores = 8,
execution_timeout = try_.DEFAULT_EXECUTION_TIMEOUT,
orchestrator_cores = 2,
orchestrator_siso_remote_jobs = siso.remote_jobs.HIGH_JOBS_FOR_CQ,
service_account = try_.DEFAULT_SERVICE_ACCOUNT,
siso_enabled = True,
siso_project = siso.project.DEFAULT_UNTRUSTED,
)
consoles.list_view(
name = "tryserver.chromium.linux",
branch_selector = branches.selector.LINUX_BRANCHES,
)
try_.builder(
name = "layout_test_leak_detection",
mirrors = [
"ci/WebKit Linux Leak",
],
gn_args = gn_args.config(
configs = [
"release_try_builder",
"remoteexec",
"linux",
"x64",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "leak_detection_linux",
mirrors = ["ci/Leak Detection Linux"],
gn_args = gn_args.config(
configs = ["ci/Leak Detection Linux", "release_try_builder"],
),
)
try_.builder(
name = "linux-afl-asan-rel",
branch_selector = branches.selector.LINUX_BRANCHES,
executable = "recipe:chromium/fuzz",
gn_args = gn_args.config(
configs = [
"afl",
"asan",
"shared",
"release",
"remoteexec",
"no_symbols",
"dcheck_always_on",
"chromeos_codecs",
"pdf_xfa",
"optimize_for_fuzzing",
"mojo_fuzzer",
"skip_generate_fuzzer_owners",
"linux",
"x64",
],
),
)
try_.builder(
name = "linux-annotator-rel",
mirrors = ["ci/linux-annotator-rel"],
gn_args = gn_args.config(
configs = [
"ci/linux-annotator-rel",
"try_builder",
"no_symbols",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-bfcache-rel",
mirrors = [
"ci/linux-bfcache-rel",
],
gn_args = "ci/linux-bfcache-rel",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-blink-heap-verification-try",
mirrors = ["ci/linux-blink-heap-verification"],
gn_args = gn_args.config(
configs = [
"ci/linux-blink-heap-verification",
"try_builder",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-centipede-asan-rel",
branch_selector = branches.selector.LINUX_BRANCHES,
executable = "recipe:chromium/fuzz",
mirrors = ["ci/Centipede Upload Linux ASan"],
gn_args = gn_args.config(
configs = [
"ci/Centipede Upload Linux ASan",
"dcheck_always_on",
"no_symbols",
"skip_generate_fuzzer_owners",
],
),
)
try_.builder(
name = "linux-clobber-rel",
mirrors = [
"ci/linux-archive-rel",
],
builder_config_settings = builder_config.try_settings(
include_all_triggered_testers = True,
is_compile_only = True,
),
gn_args = gn_args.config(
configs = [
"release_builder",
"remoteexec",
"no_symbols",
"dcheck_always_on",
"linux",
"x64",
],
),
contact_team_email = "[email protected]",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-dcheck-off-rel",
mirrors = builder_config.copy_from("linux-rel"),
gn_args = gn_args.config(
configs = [
"release_try_builder",
"remoteexec",
"dcheck_off",
"linux",
"x64",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-extended-tracing-rel",
mirrors = [
"ci/linux-extended-tracing-rel",
],
gn_args = gn_args.config(
configs = [
"ci/linux-extended-tracing-rel",
"release_try_builder",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-gcc-rel",
mirrors = [
"ci/linux-gcc-rel",
],
gn_args = "ci/linux-gcc-rel",
# Focal is needed for better C++20 support. See crbug.com/1284275.
os = os.LINUX_FOCAL,
)
try_.builder(
name = "linux-headless-shell-rel",
mirrors = ["ci/linux-headless-shell-rel"],
gn_args = gn_args.config(
configs = [
"ci/linux-headless-shell-rel",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
tryjob = try_.job(
location_filters = [
"components/headless/.+",
"headless/.+",
],
),
)
try_.builder(
name = "linux-fieldtrial-rel",
mirrors = ["ci/linux-fieldtrial-rel"],
gn_args = "ci/linux-fieldtrial-rel",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-multiscreen-fyi-rel",
mirrors = [
"ci/linux-multiscreen-fyi-rel",
],
gn_args = "ci/linux-multiscreen-fyi-rel",
contact_team_email = "[email protected]",
)
try_.builder(
name = "linux-layout-tests-edit-ng",
builder_spec = builder_config.builder_spec(
gclient_config = builder_config.gclient_config(config = "chromium"),
chromium_config = builder_config.chromium_config(
config = "chromium",
apply_configs = ["mb"],
build_config = builder_config.build_config.RELEASE,
target_bits = 64,
target_platform = builder_config.target_platform.LINUX,
),
),
gn_args = gn_args.config(
configs = [
"release_builder",
"remoteexec",
"no_symbols",
"dcheck_always_on",
"linux",
"x64",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-libfuzzer-asan-rel",
branch_selector = branches.selector.LINUX_BRANCHES,
executable = "recipe:chromium/fuzz",
mirrors = [
"ci/Libfuzzer Upload Linux ASan",
],
gn_args = gn_args.config(
configs = [
"ci/Libfuzzer Upload Linux ASan",
"dcheck_always_on",
"no_symbols",
"skip_generate_fuzzer_owners",
],
),
builderless = not settings.is_main,
experiments = {
# crbug/940930
"chromium.enable_cleandead": 100,
},
main_list_view = "try",
tryjob = try_.job(),
)
try_.builder(
name = "linux-perfetto-rel",
mirrors = ["ci/linux-perfetto-rel"],
gn_args = gn_args.config(
configs = [
"ci/linux-perfetto-rel",
"try_builder",
"no_symbols",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
tryjob = try_.job(
location_filters = [
"base/trace_event/.+",
"base/tracing/.+",
"components/tracing/.+",
"content/browser/tracing/.+",
"services/tracing/.+",
],
),
)
try_.orchestrator_builder(
name = "linux-rel",
branch_selector = branches.selector.LINUX_BRANCHES,
mirrors = [
"ci/Linux Builder",
"ci/Linux Tests",
"ci/GPU Linux Builder",
"ci/Linux Release (NVIDIA)",
],
gn_args = gn_args.config(
configs = [
"ci/Linux Builder",
"release_try_builder",
"use_clang_coverage",
"partial_code_coverage_instrumentation",
],
),
compilator = "linux-rel-compilator",
coverage_test_types = ["unit", "overall"],
experiments = {
# go/nplus1shardsproposal
"chromium.add_one_test_shard": 10,
# crbug/940930
"chromium.enable_cleandead": 100,
# b/346598710
"chromium.luci_analysis_v2": 100,
},
main_list_view = "try",
# TODO(crbug.com/40241638): Use orchestrator pool once overloaded test pools
# are addressed
# use_orchestrator_pool = True,
tryjob = try_.job(),
use_clang_coverage = True,
)
try_.compilator_builder(
name = "linux-rel-compilator",
branch_selector = branches.selector.LINUX_BRANCHES,
main_list_view = "try",
)
try_.orchestrator_builder(
name = "linux-full-remote-rel",
description_html = "Experimental " + linkify_builder("try", "linux-rel", "chromium") + " builder with more kinds of remote actions. e.g. remote linking",
mirrors = builder_config.copy_from("linux-rel"),
builder_config_settings = builder_config.try_settings(
is_compile_only = True,
),
gn_args = "try/linux-rel",
compilator = "linux-full-remote-rel-compilator",
contact_team_email = "[email protected]",
siso_configs = ["builder", "remote-library-link", "remote-exec-link"],
tryjob = try_.job(
experiment_percentage = 10,
),
use_clang_coverage = True,
)
try_.compilator_builder(
name = "linux-full-remote-rel-compilator",
contact_team_email = "[email protected]",
)
# TODO(crbug.com/40248746): Remove this builder after burning down failures
# and measuring performance to see if we can roll UBSan into ASan.
try_.builder(
name = "linux-ubsan-fyi-rel",
mirrors = [
"ci/linux-ubsan-fyi-rel",
],
gn_args = "ci/linux-ubsan-fyi-rel",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-wayland-rel",
branch_selector = branches.selector.LINUX_BRANCHES,
mirrors = [
"ci/Linux Builder (Wayland)",
"ci/Linux Tests (Wayland)",
],
gn_args = gn_args.config(
configs = [
"ci/Linux Builder (Wayland)",
"release_try_builder",
"use_clang_coverage",
"partial_code_coverage_instrumentation",
],
),
ssd = True,
# TODO(crbug.com/329118490): Re-enable flake endorser.
check_for_flakiness = False,
check_for_flakiness_with_resultdb = False,
coverage_test_types = ["unit", "overall"],
tryjob = try_.job(
location_filters = [
"chrome/browser/.+(ui|browser)test.+",
"chrome/browser/ui/views/.+test.+",
"chrome/browser/ui/views/tabs/.+",
"third_party/wayland/.+",
"third_party/wayland-protocols/.+",
"ui/ozone/platform/wayland/.+",
"ui/views/widget/.+test.+",
],
),
use_clang_coverage = True,
)
try_.builder(
name = "linux-viz-rel",
mirrors = ["ci/Linux Viz"],
gn_args = gn_args.config(
configs = [
"ci/Linux Viz",
"no_symbols",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-webkit-asan-rel",
mirrors = [
"ci/WebKit Linux ASAN",
],
gn_args = "ci/WebKit Linux ASAN",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux-webkit-msan-rel",
mirrors = [
"ci/WebKit Linux MSAN",
],
gn_args = "ci/WebKit Linux MSAN",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux_chromium_archive_rel_ng",
mirrors = [
"ci/linux-archive-rel",
],
gn_args = gn_args.config(
configs = [
"release_builder",
"remoteexec",
"linux",
"x64",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.orchestrator_builder(
name = "linux_chromium_asan_rel_ng",
branch_selector = branches.selector.LINUX_BRANCHES,
mirrors = [
"ci/Linux ASan LSan Builder",
"ci/Linux ASan LSan Tests (1)",
],
gn_args = "ci/Linux ASan LSan Builder",
compilator = "linux_chromium_asan_rel_ng-compilator",
experiments = {
# go/nplus1shardsproposal
"chromium.add_one_test_shard": 10,
"chromium.compilator_can_outlive_parent": 100,
# crbug/940930
"chromium.enable_cleandead": 100,
# b/346598710
"chromium.luci_analysis_v2": 100,
},
main_list_view = "try",
# TODO (crbug.com/1372179): Use orchestrator pool once overloaded test pools
# are addressed
# use_orchestrator_pool = True,
tryjob = try_.job(),
)
try_.compilator_builder(
name = "linux_chromium_asan_rel_ng-compilator",
branch_selector = branches.selector.LINUX_BRANCHES,
main_list_view = "try",
)
try_.builder(
name = "linux_chromium_cfi_rel_ng",
mirrors = [
"ci/Linux CFI",
],
gn_args = gn_args.config(
configs = [
"ci/Linux CFI",
],
),
cores = 32,
ssd = True,
check_for_flakiness = False,
check_for_flakiness_with_resultdb = False,
# TODO(thakis): Remove once https://crbug.com/927738 is resolved.
execution_timeout = 7 * time.hour,
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
tryjob = try_.job(
location_filters = [
# Diectories that have caused breakages in the past due to the
# TensorFlowLite roll.
"third_party/eigen3/.+",
"third_party/farmhash/.+",
"third_party/fft2d/.+",
"third_party/flatbuffers/.+",
"third_party/fp16/.+",
"third_party/fxdiv/.+",
"third_party/gemmlowp/.+",
"third_party/pthreadpool/.+",
"third_party/ruy/.+",
"third_party/tflite/.+",
"third_party/xnnpack/.+",
],
),
)
try_.builder(
name = "linux_chromium_chromeos_asan_rel_ng",
mirrors = [
"ci/Linux Chromium OS ASan LSan Builder",
"ci/Linux Chromium OS ASan LSan Tests (1)",
],
gn_args = "ci/Linux Chromium OS ASan LSan Builder",
# TODO(crbug.com/41482936): Remove this when memory consumption during links
# is reduced.
cores = 16,
ssd = True,
# TODO(crbug.com/40728894): Remove this timeout once we figure out the
# regression in compiler or toolchain.
execution_timeout = 7 * time.hour,
siso_remote_jobs = siso.remote_jobs.HIGH_JOBS_FOR_CQ,
)
try_.builder(
name = "linux_chromium_chromeos_msan_rel_ng",
mirrors = [
"ci/Linux ChromiumOS MSan Builder",
"ci/Linux ChromiumOS MSan Tests",
],
gn_args = "ci/Linux ChromiumOS MSan Builder",
cores = 16,
ssd = True,
execution_timeout = 6 * time.hour,
siso_remote_jobs = siso.remote_jobs.HIGH_JOBS_FOR_CQ,
)
try_.builder(
name = "linux_chromium_clobber_deterministic",
executable = "recipe:swarming/deterministic_build",
gn_args = gn_args.config(
configs = [
"release_builder",
"remoteexec",
"no_symbols",
"dcheck_always_on",
"linux",
"x64",
],
),
execution_timeout = 6 * time.hour,
siso_remote_jobs = siso.remote_jobs.HIGH_JOBS_FOR_CQ,
)
try_.builder(
name = "linux_chromium_compile_dbg_ng",
branch_selector = branches.selector.LINUX_BRANCHES,
mirrors = ["ci/Linux Builder (dbg)"],
builder_config_settings = builder_config.try_settings(
include_all_triggered_testers = True,
is_compile_only = True,
),
gn_args = gn_args.config(
configs = [
"debug_try_builder",
"remoteexec",
"linux",
"x64",
],
),
builderless = not settings.is_main,
caches = [
swarming.cache(
name = "builder",
path = "linux_debug",
),
],
experiments = {
# crbug/940930
"chromium.enable_cleandead": 100,
},
main_list_view = "try",
siso_remote_jobs = siso.remote_jobs.HIGH_JOBS_FOR_CQ,
tryjob = try_.job(),
)
try_.builder(
name = "linux_chromium_compile_rel_ng",
mirrors = [
"ci/Linux Builder",
],
builder_config_settings = builder_config.try_settings(
include_all_triggered_testers = True,
is_compile_only = True,
),
gn_args = gn_args.config(
configs = [
"release_builder",
"remoteexec",
"no_symbols",
"dcheck_always_on",
"linux",
"x64",
],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux_chromium_dbg_ng",
branch_selector = branches.selector.LINUX_BRANCHES,
mirrors = [
"ci/Linux Builder (dbg)",
"Linux Tests (dbg)(1)",
],
gn_args = gn_args.config(
configs = [
"gpu_tests",
"debug_try_builder",
"remoteexec",
"linux",
"x64",
],
),
caches = [
swarming.cache(
name = "builder",
path = "linux_debug",
),
],
main_list_view = "try",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
tryjob = try_.job(
location_filters = [
"build/.*check_gn_headers.*",
],
),
)
try_.builder(
name = "linux_chromium_msan_rel_ng",
mirrors = [
"ci/Linux MSan Builder",
"ci/Linux MSan Tests",
],
# This is intentionally a release_bot and not a release_trybot;
# enabling DCHECKs seems to cause flaky failures that don't show up
# on the continuous builder.
gn_args = "ci/Linux MSan Builder",
cores = 16,
ssd = True,
execution_timeout = 8 * time.hour,
siso_remote_jobs = siso.remote_jobs.HIGH_JOBS_FOR_CQ,
)
try_.orchestrator_builder(
name = "linux_chromium_tsan_rel_ng",
branch_selector = branches.selector.LINUX_BRANCHES,
mirrors = [
"ci/Linux TSan Builder",
"ci/Linux TSan Tests",
],
gn_args = gn_args.config(
configs = [
"ci/Linux TSan Builder",
"release_try_builder",
"minimal_symbols",
],
),
compilator = "linux_chromium_tsan_rel_ng-compilator",
experiments = {
# go/nplus1shardsproposal
"chromium.add_one_test_shard": 10,
# crbug/940930
"chromium.enable_cleandead": 100,
# b/346598710
"chromium.luci_analysis_v2": 100,
},
main_list_view = "try",
# TODO (crbug.com/1372179): Use orchestrator pool once overloaded test pools
# are addressed
# use_orchestrator_pool = True,
tryjob = try_.job(),
)
try_.compilator_builder(
name = "linux_chromium_tsan_rel_ng-compilator",
branch_selector = branches.selector.LINUX_BRANCHES,
main_list_view = "try",
)
try_.builder(
name = "linux-ubsan-vptr",
mirrors = [
"ci/linux-ubsan-vptr",
],
# This is intentionally a release_bot and not a release_trybot to match
# the CI configuration, where no debug builder exists.
gn_args = "ci/linux-ubsan-vptr",
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "linux_upload_clang",
executable = "recipe:chromium_toolchain/package_clang",
gn_args = gn_args.config(
configs = [
"release_builder",
"linux",
"x64",
],
),
builderless = True,
cores = 32,
ssd = True,
execution_timeout = 5 * time.hour,
notifies = ["chrome-rust-toolchain"],
)
try_.builder(
name = "linux_upload_rust",
executable = "recipe:chromium_toolchain/package_rust",
builderless = True,
cores = 32,
ssd = True,
execution_timeout = 5 * time.hour,
notifies = ["chrome-rust-toolchain"],
)
try_.builder(
name = "linux-v4l2-codec-rel",
mirrors = [
"ci/linux-v4l2-codec-rel",
],
gn_args = gn_args.config(
configs = [
"ci/linux-v4l2-codec-rel",
"release_try_builder",
],
),
main_list_view = "try",
tryjob = try_.job(
location_filters = [
cq.location_filter(path_regexp = "media/gpu/chromeos/.+"),
cq.location_filter(path_regexp = "media/gpu/v4l2/.+"),
],
),
)
try_.builder(
name = "network_service_linux",
mirrors = [
"ci/Network Service Linux",
],
gn_args = gn_args.config(
configs = ["ci/Network Service Linux", "release_try_builder"],
),
siso_remote_jobs = siso.remote_jobs.LOW_JOBS_FOR_CQ,
)
try_.builder(
name = "tricium-metrics-analysis",
executable = "recipe:tricium_metrics",
)
try_.builder(
name = "tricium-oilpan-analysis",
executable = "recipe:tricium_oilpan",
)
try_.builder(
name = "tricium-simple",
executable = "recipe:tricium_simple",
)
try_.gpu.optional_tests_builder(
name = "linux_optional_gpu_tests_rel",
branch_selector = branches.selector.LINUX_BRANCHES,
builder_spec = builder_config.builder_spec(
gclient_config = builder_config.gclient_config(
config = "chromium",
),
chromium_config = builder_config.chromium_config(
config = "chromium",
apply_configs = [
"mb",
],
build_config = builder_config.build_config.RELEASE,
target_bits = 64,
target_platform = builder_config.target_platform.LINUX,
),
build_gs_bucket = "chromium-gpu-fyi-archive",
),
builder_config_settings = builder_config.try_settings(
retry_failed_shards = False,
),
gn_args = gn_args.config(
configs = [
"gpu_fyi_tests",
"release_builder",
"remoteexec",
"minimal_symbols",
"dcheck_always_on",
"linux",
"x64",
],
),
main_list_view = "try",
tryjob = try_.job(
location_filters = [
# Inclusion filters.
cq.location_filter(path_regexp = "chrome/browser/vr/.+"),
cq.location_filter(path_regexp = "content/browser/xr/.+"),
cq.location_filter(path_regexp = "content/test/data/gpu/.+"),
cq.location_filter(path_regexp = "content/test/gpu/.+"),
cq.location_filter(path_regexp = "gpu/.+"),
cq.location_filter(path_regexp = "media/audio/.+"),
cq.location_filter(path_regexp = "media/base/.+"),
cq.location_filter(path_regexp = "media/capture/.+"),
cq.location_filter(path_regexp = "media/filters/.+"),
cq.location_filter(path_regexp = "media/gpu/.+"),
cq.location_filter(path_regexp = "media/mojo/.+"),
cq.location_filter(path_regexp = "media/renderers/.+"),
cq.location_filter(path_regexp = "media/video/.+"),
cq.location_filter(path_regexp = "testing/buildbot/tryserver.chromium.linux.json"),
cq.location_filter(path_regexp = "testing/trigger_scripts/.+"),
cq.location_filter(path_regexp = "third_party/blink/renderer/modules/mediastream/.+"),
cq.location_filter(path_regexp = "third_party/blink/renderer/modules/webcodecs/.+"),
cq.location_filter(path_regexp = "third_party/blink/renderer/modules/webgl/.+"),
cq.location_filter(path_regexp = "third_party/blink/renderer/modules/webgpu/.+"),
cq.location_filter(path_regexp = "third_party/blink/renderer/platform/graphics/gpu/.+"),
cq.location_filter(path_regexp = "tools/clang/scripts/update.py"),
cq.location_filter(path_regexp = "tools/mb/mb_config_expectations/tryserver.chromium.linux.json"),
cq.location_filter(path_regexp = "ui/gl/.+"),
# Exclusion filters.
cq.location_filter(exclude = True, path_regexp = ".*\\.md"),
],
),
)
# This builder is different from try/linux-js-code-coverage builder below as
# this is a try builder meant to provide javascript coverage for webui related
# CLs, where as try/linux-js-code-coverage builder is there to test changes in
# ci/linux-js-code-coverage builder and would mostly be used by coverage devs
# only.
try_.builder(
name = "linux-js-coverage-rel",
mirrors = ["ci/linux-js-code-coverage"],
gn_args = gn_args.config(
configs = [
"ci/linux-js-code-coverage",
],
),
check_for_flakiness = False,
check_for_flakiness_with_resultdb = False,
main_list_view = "try",
tryjob = try_.job(
location_filters = [
cq.location_filter(path_regexp = r".*\.(js|ts)"),
],
),
use_javascript_coverage = True,
)
# This builder is different from try/chromeos-js-code-coverage builder below as
# this is a try builder meant to provide javascript coverage for webui related
# CLs, where as try/chromeos-js-code-coverage builder is there to test changes
# in ci/chromeos-js-code-coverage builder and would mostly be used by coverage
# devs only.
try_.builder(
name = "chromeos-js-coverage-rel",
mirrors = ["ci/chromeos-js-code-coverage"],
gn_args = gn_args.config(
configs = [
"ci/chromeos-js-code-coverage",
],
),
check_for_flakiness = False,
check_for_flakiness_with_resultdb = False,
main_list_view = "try",
tryjob = try_.job(
experiment_percentage = 50,
location_filters = [
cq.location_filter(path_regexp = r".*\.(js|ts)"),
],
),
use_javascript_coverage = True,
)
# Coverage builders set up mainly to test changes in CI builders
try_.builder(
name = "linux-code-coverage",
mirrors = ["ci/linux-code-coverage"],
gn_args = "ci/linux-code-coverage",
execution_timeout = 20 * time.hour,
)
try_.builder(
name = "linux-chromeos-code-coverage",
mirrors = ["ci/linux-chromeos-code-coverage"],
gn_args = "ci/linux-chromeos-code-coverage",
execution_timeout = 20 * time.hour,
)
# This builder serves a different purpose than try/linux-js-coverage-rel
# See the note on linux-js-coverage-rel builder above to understand more.
try_.builder(
name = "linux-js-code-coverage",
mirrors = ["ci/linux-js-code-coverage"],
gn_args = "ci/linux-js-code-coverage",
execution_timeout = 20 * time.hour,
use_javascript_coverage = True,
)
try_.builder(
name = "chromeos-js-code-coverage",
mirrors = ["ci/chromeos-js-code-coverage"],
gn_args = "ci/chromeos-js-code-coverage",
execution_timeout = 20 * time.hour,
use_javascript_coverage = True,
)
############### Coverage Builders End ##################