[AUTOSERV]
# Minimum OS version that supports server side packaging. Older builds may
# not have server side package built or with Autotest code change to support
# server-side packaging.
# This build is older than the one used in global config (6986). This allows
# moblab can still test builds in R43 branch with server-side packaging, except
# that with it can't run paygen_au_canary and moblab_RunSuite suites.
enable_ssp_container: True
min_version_support_ssp: 6919

auto_start_servod: True

# Name of the base container.
container_base_name: moblab_base_07

# Exports tko job information to file.
export_tko_job_to_file: True

# Do not reduce the log size makes it hard to debug.
enable_result_throttling: False

[SCHEDULER]
minimum_tick_sec: 5
inline_host_acquisition: False
exit_on_failed_ssp_setup: True

[AUTOTEST_WEB]
wmatrix_url:  /wmatrix
stainless_url:

[CROS]
# Crash servers are not accessable externally.
crash_server:
# CTS result server is only available for internal google testing.
cts_results_server:
# In moblab, this paramater is empty and uses the image bucket by default.
results_storage_server:
stable_cros_version: R68-10718.88.2
quick_provision_build_regex = ^.*-(paladin|pfq|release|informational|trybot)/.*

# The pubsub topic the gs_offloader notification is sent to.
cloud_notification_topic: projects/chromeos-partner-moblab/topics/moblab-notification

# All moblab DUT's are in dev mode, so skip the repair check.
dev_mode_allowed: True

# Reduce upload bandwidth for partner by switching on tar and compress results.
gs_offloader_limit_file_count: True

# Heartbeat rate to the cloud.
heartbeat_rate_seconds: 0
