# 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: >=R21
pool: suites
num: 2

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

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

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

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

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

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

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

[Chameleon]
run_on: nightly
suite: chameleon
branch_specs: >=R36
pool: suites

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[WiFi_InteropWeekly]
run_on: weekly
suite: wifi_interop
branch_specs: >=R34
pool: wifiinterop

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

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

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

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

[NightlyStress]
run_on: nightly
suite: stress
branch_specs: >=R36
pool: stress

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

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

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