# 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

# TODO(beeps) Figure out a better frequency for tot nightly suites
# (https://crbug.com/417131).

#TODO(ihf): Delete this after R40 goes stable.
[NightlyGraphics]
run_on: weekly
suite: graphics
branch_specs: >=R37
pool: suites

#TODO(beeps): Make this "run_on: new_build" for selected boards again. (373526)
[GraphicsPerBuild]
run_on: nightly
suite: graphics_per-build
branch_specs: ==tot
pool: suites

[GraphicsPerDay]
run_on: nightly
suite: graphics_per-day
branch_specs: ==tot
pool: suites

[GraphicsPerWeek]
run_on: weekly
suite: graphics_per-week
branch_specs: ==tot
pool: suites

[ChameleonAudio]
run_on: nightly
suite: chameleon_audio
branch_specs: ==tot
pool: chameleon_audio
job_retry: True

[ChameleonAudioNightly]
run_on: nightly
suite: chameleon_audio_nightly
branch_specs: ==tot
pool: chameleon_audio_stable
job_retry: True

[ChameleonAudioOldBranch]
run_on: weekly
suite: chameleon_audio
branch_specs: <=tot-1
pool: chameleon
job_retry: True

[ChameleonAudioPerbuild]
run_on: new_build
suite: chameleon_audio_perbuild
branch_specs: ==tot
pool: chameleon_audio_stable
job_retry: True
file_bugs: True

[ChameleonDp]
run_on: nightly
suite: chameleon_dp
branch_specs: ==tot
pool: chameleon
job_retry: True

[ChameleonDpOldBranch]
run_on: weekly
suite: chameleon_dp
branch_specs: <=tot-1
pool: chameleon
job_retry: True

[ChameleonDpStress]
run_on: weekly
suite: chameleon_dp_stress
branch_specs: ==tot
pool: chameleon

[ChameleonHdmi]
run_on: nightly
suite: chameleon_hdmi
branch_specs: ==tot
pool: chameleon_hdmi
job_retry: True

[ChameleonHdmiNightly]
run_on: nightly
suite: chameleon_hdmi_nightly
branch_specs: ==tot
pool: chameleon_hdmi_stable
job_retry: True

[ChameleonHdmiOldBranch]
run_on: weekly
suite: chameleon_hdmi
branch_specs: <=tot-1
pool: chameleon
job_retry: True

[ChameleonHdmiPerbuild]
run_on: new_build
suite: chameleon_hdmi_perbuild
branch_specs: ==tot
pool: chameleon_hdmi_stable
job_retry: True
file_bugs: True

[ChameleonHdmiStress]
run_on: weekly
suite: chameleon_hdmi_stress
branch_specs: ==tot
pool: chameleon

[ChameleonVga]
run_on: nightly
suite: chameleon_vga
branch_specs: ==tot
pool: chameleon
job_retry: True

[ChameleonVgaOldBranch]
run_on: weekly
suite: chameleon_vga
branch_specs: <=tot-1
pool: chameleon
job_retry: True

[Hotrod]
run_on: nightly
suite: hotrod
branch_specs: >=tot-1
pool: hotrod

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

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

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

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

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

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

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

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

[Network3g]
run_on: nightly
suite: network3g
branch_specs: >=tot-2
pool: cellular
num: 7

[Network3g_att]
run_on: nightly
suite: network3g_att
branch_specs: >=tot-2
pool: cellular

[Network3g_tmobile]
run_on: nightly
suite: network3g_tmobile
branch_specs: >=tot-2
pool: cellular
num: 4

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

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

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

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

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

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

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

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

[audio]
run_on: nightly
suite: audio
branch_specs: ==tot
pool: suites

[video]
run_on: nightly
suite: video
branch_specs: ==tot
pool: suites
num: 4
file_bugs: True

[youtube_mse_eme]
run_on: nightly
suite: youtube_mse_eme
branch_specs: ==tot
pool: suites

[youtube_page]
run_on: nightly
suite: youtube_page
branch_specs: ==tot
pool: suites

[LinkPerf]
run_on: nightly
suite: link_perf
branch_specs: ==tot
pool: link_perf

[perf_v2]
run_on: nightly
suite: perf_v2
branch_specs: ==tot
pool: suites

[NetworkNightly]
run_on: nightly
suite: network_nightly
branch_specs: ==tot
pool: suites
file_bugs: False

[WiFi_MatFunc]
run_on: nightly
suite: wifi_matfunc
branch_specs: ==tot
pool: wificell

[WiFi_EndtoEnd]
run_on: nightly
suite: wifi_endtoend
branch_specs: ==tot
pool: wificell

[WiFi_MatFunc_bcm4371]
run_on: nightly
suite: wifi_matfunc_bcm4371
branch_specs: ==tot
pool: wificell_preflight

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

[WiFi_Perf_bcm4371]
run_on: nightly
suite: wifi_perf_bcm4371
branch_specs: ==tot
pool: wificell_preflight

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

[WiFi_Update_Router]
run_on: nightly
suite: wifi_update_router
branch_specs: ==tot
pool: wificell

[WiFi_Update_Router_Preflight]
run_on: nightly
suite: wifi_update_router
branch_specs: ==tot
pool: wificell_preflight

[WiFi_Update_Router_Dev_Cells]
run_on: weekly
suite: wifi_update_router
branch_specs: ==tot
pool: wificell_dev

[WiFi_Update_Router_Pre_CQ]
run_on: weekly
suite: wifi_update_router
branch_specs: ==tot
pool: wificell-pre-cq

[WiFi_Update_Router_Stress_WiFi]
run_on: weekly
suite: wifi_update_router
branch_specs: ==tot
pool: stress-wifi

[WiFi_Interop_Nightly]
run_on: nightly
suite: wifi_interop
branch_specs: ==tot
pool:wifichaos

[WiFi_LucidSleep_Nightly]
run_on: nightly
suite: wifi_lucidsleep
branch_specs: ==tot
pool: wificell

[WiFi_LucidSleep_Weekly]
run_on: weekly
suite: wifi_lucidsleep
branch_specs: >=tot-1
pool: wificell

[WiMAX]
run_on: nightly
suite: wimax
branch_specs: ==tot
pool: wimax

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

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

[NightlyStressExperimental]
run_on: nightly
suite: stress_experimental
branch_specs: ==tot
pool: stress
file_bugs: False

[NightlyStress]
run_on: nightly
suite: stress
branch_specs: >=tot-2
pool: stress
file_bugs: True

[NightlyStressPool2]
run_on: nightly
suite: stress2
branch_specs: >=tot-2
pool: stress2
file_bugs: True

[NightlyStressPool3]
run_on: nightly
suite: stress3
branch_specs: >=tot-2
pool: stress3
file_bugs: True

[NightlyStressPool4]
run_on: nightly
suite: stress4
branch_specs: >=tot-2
pool: stress4
file_bugs: True

[NightlyStressPool5]
run_on: nightly
suite: stress5
branch_specs: >=tot-2
pool: stress5
file_bugs: True

[NightlyKernelUsb]
run_on: nightly
suite: kernel_usb
branch_specs: ==tot
pool: usb_peripherals
file_bugs: True

[Gizmo]
run_on: nightly
suite: bvt-cq
branch_specs: ==tot
pool: gizmo

[NightlyStormBvtCq]
run_on: nightly
suite: bvt-cq
branch_specs: ==tot
boards: storm
pool: suites

[NightlyStormBvtInline]
run_on: nightly
suite: bvt-inline
branch_specs: ==tot
boards: storm
pool: suites

[NightlyStormBvtPerBuild]
run_on: nightly
suite: bvt-perbuild
branch_specs: ==tot
boards: storm
pool: suites

# TODO(beeps) figure out a better frequency for dev and beta weekly suites
# (http://crbug.com/417131).
[WeeklyKernelRegressions]
run_on: weekly
suite: kernel_weekly_regression
branch_specs: >=tot-2
pool: suites
num: 2

[WeeklyPowerRequirements]
run_on: weekly
suite: power_requirements
branch_specs: >=tot-2
pool: suites

[WeeklyStoraqequal]
run_on: weekly
suite: storagequal
branch_specs: >=tot-2
pool: suites

[WeeklyNightlyHwQual]
run_on: weekly
suite: hwqual
branch_specs: >=tot-2
pool: suites
num: 3

[WeeklyKernelDailyRegression]
run_on: weekly
suite: kernel_daily_regression
branch_specs: >=tot-2
pool: suites
num: 2

[WeeklyKernelDailyBenchmarks]
run_on: weekly
suite: kernel_daily_benchmarks
branch_specs: >=tot-2
pool: suites
file_bugs: True

[WeeklyKernelPerBuildRegression]
run_on: weekly
suite: kernel_per-build_regression
branch_specs: >=tot-2
pool: suites
num: 2

[WeeklyKernelPerBuildBenchmarks]
run_on: weekly
suite: kernel_per-build_benchmarks
branch_specs: >=tot-2
pool: suites

[WeeklyNightlyRegression]
run_on: weekly
suite: regression
branch_specs: >=tot-2
pool: suites
num: 2

[WeeklyExperimentalTests]
run_on: weekly
suite: experimental
branch_specs: >=tot-2
pool: suites

[WeeklyJailedBuild]
run_on: weekly
suite: jailed_build
branch_specs: >=tot-2
pool: jail

[WeeklyNetwork3g_pseudomodem]
run_on: weekly
suite: network3g_pseudomodem
branch_specs: >=tot-2
pool: suites

[WeeklyCellular_modem_repair]
run_on: weekly
suite: cellular_modem_repair
branch_specs: >=tot-2
pool: cellular_repair

[WeeklyNetworkUI]
run_on: weekly
suite: network_ui
branch_specs: >=tot-2
pool: suites

[WeeklyPowerDaily]
run_on: weekly
suite: power_daily
branch_specs: >=tot-2
pool: suites
file_bugs: True

[WeeklyPerfalerts]
# Not a part of perf build because it requires 3 machines.
run_on: weekly
suite: perfalerts
branch_specs: >=tot-2
pool: suites
num: 1

[WeeklySecuritySuite]
run_on: weekly
suite: security
branch_specs: >=tot-2
pool: suites

[WeeklyPower_build]
run_on: weekly
suite: power_build
branch_specs: >=tot-2
pool: suites

[Weeklyaudio]
run_on: weekly
suite: audio
branch_specs: >=tot-2
pool: suites

[Weeklyvideo]
run_on: weekly
suite: video
branch_specs: >=tot-2
pool: suites
num: 4
file_bugs: True

[Weeklyyoutube_mse_eme]
run_on: weekly
suite: youtube_mse_eme
branch_specs: >=tot-2
pool: suites

[Weeklyyoutube_page]
run_on: weekly
suite: youtube_page
branch_specs: >=tot-2
pool: suites

[WeeklyLinkPerf]
run_on: weekly
suite: link_perf
branch_specs: >=tot-2
pool: link_perf

[Weeklyperf_v2]
run_on: weekly
suite: perf_v2
branch_specs: >=R40
pool: suites

[WeeklyNetworkNightly]
run_on: weekly
suite: network_nightly
branch_specs: >=tot-2
pool: suites
file_bugs: False

[WeeklyWiFi_Perf]
run_on: weekly
suite: wifi_perf
branch_specs: <=tot-1
pool: wificell

[WeeklyWiFi_Attenuated_Performance]
run_on: weekly
suite: wifi_atten_perf
branch_specs: <=tot-1
pool: groamer

[WeeklyWiMAX]
run_on: weekly
suite: wimax
branch_specs: >=tot-2
pool: wimax

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

[WeeklyBluetooth_Qualification]
run_on: weekly
suite: bluetooth_qualification
branch_specs: >=tot-2
pool: wificell

[WeeklyBluetooth_Sanity]
run_on: weekly
suite: bluetooth_sanity
branch_specs: >=tot-2
pool: wificell

[WeeklyWiFi_MatFunc]
run_on: weekly
suite: wifi_matfunc
branch_specs: <=tot-1
pool: wificell

[WeeklyWiFi_EndtoEnd]
run_on: weekly
suite: wifi_endtoend
branch_specs: <=tot-1
pool: wificell

[WeeklyStress]
run_on: weekly
suite: stress
branch_specs: >=tot-2
pool: stress
file_bugs: True

[WeeklyStressPool2]
run_on: weekly
suite: stress
branch_specs: >=tot-2
pool: stress2
file_bugs: True

[WeeklyStressPool3]
run_on: weekly
suite: stress
branch_specs: >=tot-2
pool: stress3
file_bugs: True

[WeeklyStressPool4]
run_on: weekly
suite: stress
branch_specs: >=tot-2
pool: stress4
file_bugs: True

[WeeklyStressPool5]
run_on: weekly
suite: stress
branch_specs: >=tot-2
pool: stress5
file_bugs: True

[WeeklyGizmo]
run_on: weekly
suite: bvt-cq
branch_specs: >=tot-2
pool: gizmo

[TendoExperimental]
run_on: nightly
suite: tendo_experimental
branch_specs: ==tot
pool: suites

# Please do not add tests to this suite without first clearing it with the
# crosbolt team.
[CrosboltPerfPerbuild]
run_on: new_build
suite: crosbolt_perf_perbuild
branch_specs: >=tot-1
pool: performance
file_bugs: True

# Please do not add tests to this suite without first clearing it with the
# crosbolt team.
[CrosboltPerfNightly]
run_on: nightly
suite: crosbolt_perf_nightly
branch_specs: >=tot-1
pool: performance
file_bugs: True

[FaftEcNightly]
run_on: nightly
suite: faft_ec
branch_specs: ==tot
firmware_rw_build_spec: firmware
test_source: cros
pool: faft-test
file_bugs: True
job_retry: True

[FaftBiosNightly]
run_on: nightly
suite: faft_bios
branch_specs: ==tot
firmware_rw_build_spec: firmware
test_source: cros
pool: faft-test
file_bugs: True
job_retry: True
