# When changing this file, you can (and should) validate your changes by
# running |./site_utils/suite_scheduler/suite_scheduler.py --sanity|
#
# When adding tests to a suite, if one (or more) of the tests contains
# DEPENDENCIES, then the number of different host specifications required
# can increase. This means that the number of physical machines the suite
# must ask for increases, as if a suite needs two different machines, and
# only asks for one, then there's going to be some set of tests that can't
# run. The sanity check will describe to you what suites to set at what
# number of machines to make sure all suites can run.

#[nightly_params]
#always_handle: True

[WeeklyKernelRegressions]
run_on: weekly
suite: kernel_weekly_regression
branch_specs: >=R39
pool: suites
num: 2

[WeeklyPowerRequirements]
run_on: weekly
suite: power_requirements
branch_specs: >=R39
pool: suites

[WeeklyVideoRegressions]
run_on: weekly
suite: video_weekly_regression
branch_specs: >=R39
pool: suites
num: 2

[WeeklyStoraqequal]
run_on: weekly
suite: storagequal
branch_specs: >=R39
pool: suites

[NightlyGraphics]
run_on: nightly
suite: graphics
branch_specs: >=R39
pool: suites

[PerBuildGraphics]
run_on: nightly
suite: graphics_per-build
branch_specs: >=R39
pool: suites

[GraphicsGLES]
run_on: nightly
suite: graphicsGLES
branch_specs: >=R39
pool: snow

[GpuHang]
run_on: nightly
suite: gpu_hang
branch_specs: >=R39
pool: suites

[ChameleonDp]
run_on: nightly
suite: chameleon_dp
branch_specs: >=R39
pool: suites

[ChameleonHdmi]
run_on: nightly
suite: chameleon_hdmi
branch_specs: >=R39
pool: suites

[NightlyHwQual]
run_on: nightly
suite: hwqual
branch_specs: >=R39
pool: suites
num: 3

[KernelDailyRegression]
run_on: nightly
suite: kernel_daily_regression
branch_specs: >=R39
pool: suites
num: 2

[KernelDailyBenchmarks]
run_on: nightly
suite: kernel_daily_benchmarks
branch_specs: >=R39
pool: suites
file_bugs: True

[KernelPerBuildRegression]
run_on: nightly
suite: kernel_per-build_regression
branch_specs: >=R39
pool: suites
num: 2

[KernelPerBuildBenchmarks]
run_on: nightly
suite: kernel_per-build_benchmarks
branch_specs: >=R39
pool: suites

[NightlyRegression]
run_on: nightly
suite: regression
branch_specs: >=R39
pool: suites
num: 2

[ExperimentalTests]
run_on: nightly
suite: experimental
branch_specs: >=R39
pool: suites

[JailedBuild]
run_on: nightly
suite: jailed_build
branch_specs: >=R39
pool: jail

[JailedNightly]
run_on: nightly
suite: jailed_daily
branch_specs: >=R39
pool: jail

[JailedWeekly]
run_on: weekly
suite: jailed_weekly
branch_specs: >=R39
pool: jail

[Network3g]
run_on: nightly
suite: network3g
branch_specs: >=R39
pool: cellular
num: 7

[Network3g_att]
run_on: nightly
suite: network3g_att
branch_specs: >=R39
pool: cellular

[Network3g_tmobile]
run_on: nightly
suite: network3g_tmobile
branch_specs: >=R39
pool: cellular
num: 4

[Network3g_verizon]
run_on: nightly
suite: network3g_verizon
branch_specs: >=R39
pool: cellular
num: 2

[Network3g_pseudomodem]
run_on: nightly
suite: network3g_pseudomodem
branch_specs: >=R39
pool: suites

[Cellular_modem_repair]
run_on: nightly
suite: cellular_modem_repair
branch_specs: >=R39
pool: cellular_repair

[NetworkUI]
run_on: nightly
suite: network_ui
branch_specs: >=R39
pool: suites

[PowerDaily]
run_on: nightly
suite: power_daily
branch_specs: >=R39
pool: suites
file_bugs: True

[Perfalerts]
# Not a part of perf build because it requires 3 machines.
run_on: nightly
suite: perfalerts
branch_specs: >=R39
pool: suites
num: 1

[SecuritySuite]
run_on: nightly
suite: security
branch_specs: >=R39
pool: suites

[Power_build]
run_on: nightly
suite: power_build
branch_specs: >=R39
pool: suites

[pagecycler]
run_on: nightly
suite: pagecycler
branch_specs: >=R39
pool: suites

[audio]
run_on: nightly
suite: audio
branch_specs: >=R39
pool: suites

[video]
run_on: nightly
suite: video
branch_specs: >=R39
pool: suites
num: 4

[youtube_mse_eme]
run_on: nightly
suite: youtube_mse_eme
branch_specs: >=R39
pool: suites

[youtube_page]
run_on: nightly
suite: youtube_page
branch_specs: >=R39
pool: suites

[WebRTC]
run_on: nightly
suite: webrtc
branch_specs: >=R39
pool: suites

# run only and post-ALEX platforms (so do not run mario, zgb, and alex)
[VDA]
run_on: nightly
suite: vda
branch_specs: >=R39
pool: vda
num: 2

[LinkPerf]
run_on: nightly
suite: link_perf
branch_specs: >=R39
pool: link_perf

[FirmwarePerBuildRegression_ec]
run_on: nightly
suite: faft_ec
pool: faft-ec
branch_specs: >=R39

[perf_v2]
run_on: nightly
suite: perf_v2
branch_specs: >=R39
pool: suites

[NetworkNightly]
run_on: nightly
suite: network_nightly
branch_specs: >=R39
pool: suites
file_bugs: True

[WiFi_MatFuncDaily]
run_on: nightly
suite: wifi_matfunc
branch_specs: >=R39
pool: wificell

[WiFi_MatFuncDaily_Preflight]
run_on: nightly
suite: wifi_matfunc
branch_specs: >=R39
pool: wificell_preflight

[WiFi_MatFunc_Weekly]
run_on: weekly
suite: wifi_matfunc
branch_specs: <=R38
pool: wificell

[WiFi_Perf]
run_on: nightly
suite: wifi_perf
branch_specs: >=R39
pool: wificell

[WiFi_Perf_Weekly]
run_on: weekly
suite: wifi_perf
branch_specs: <=R38
pool: wificell

[WiFi_Attenuated_Performance]
run_on: nightly
suite: wifi_atten_perf
branch_specs: >=R39
pool: groamer

[WiMAX]
run_on: nightly
suite: wimax
branch_specs: >=R39
pool: wimax

[SecurityWeekly]
run_on: weekly
suite: security_weekly
branch_specs: >=R37
pool: suites

[Bluetooth_Qualification]
run_on: nightly
suite: bluetooth_qualification
branch_specs: >=R39
pool: wificell

[Bluetooth_Qualification_Weekly]
run_on: weekly
suite: bluetooth_qualification
branch_specs: <=R38
pool: wificell

[Bluetooth_Sanity]
run_on: nightly
suite: bluetooth_sanity
branch_specs: >=R39
pool: wificell

[Bluetooth_Sanity_Weekly]
run_on: weekly
suite: bluetooth_sanity
branch_specs: <=R38
pool: wificell

[NightlyStress]
run_on: nightly
suite: stress
branch_specs: >=R39
pool: stress
file_bugs: True

[NightlyStressPool2]
run_on: nightly
suite: stress
branch_specs: >=R39
pool: stress2
file_bugs: True

[NightlyStressPool3]
run_on: nightly
suite: stress
branch_specs: >=R39
pool: stress3
file_bugs: True

[NightlyStressPool4]
run_on: nightly
suite: stress
branch_specs: >=R39
pool: stress4
file_bugs: True

[NightlyStressPool5]
run_on: nightly
suite: stress
branch_specs: >=R39
pool: stress5
file_bugs: True

[Gizmo]
run_on: nightly
suite: bvt
branch_specs: >=R39
pool: gizmo

[Duck]
run_on: nightly
suite: bvt
branch_specs: >=R39
pool: duck

[ui]
run_on: nightly
suite: ui
branch_specs: >=R39
pool: suites
