# 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: new_build
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: >=R37
pool: cellular
num: 7

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

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

[Network3g_verizon]
run_on: nightly
suite: network3g_verizon
branch_specs: >=R37
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

[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: >=R37
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
