[AUTOTEST_WEB]
host: localhost
database: chromeos_autotest_db
db_type: mysql
user: chromeosqa-admin
password: USE SHADOW PASSWORD
job_timeout_default: 24
job_timeout_mins_default: 1440
job_max_runtime_mins_default: 1440
parse_failed_repair_default: 0
# Only set this if your server is not 'http://[SERVER] hostname/afe/'
#base_url: http://your_autotest_server/afe/
readonly_host: localhost
readonly_user: chromeosqa-read
readonly_password:
query_timeout: 3600
min_retry_delay: 20
max_retry_delay: 60
graph_cache_creation_timeout_minutes: 10
# Whether to enable django template debug mode. If this is set to True, all
# django errors will be wrapped in a nice debug page with detailed environment
# and stack trace info. Turned off by default.
template_debug_mode: True
# Whether to enable django SQL debug mode. If this is set to True, all
# queries performed by the Object Relational Mapper subsystem will be printed,
# which means the scheduler logs will contains all the queries executed. This
# is too much verbosity for 'production' systems, hence turned off by default.
sql_debug_mode: False

# Servers that should use the readonly slaves for heartbeat. Not shards.
readonly_heartbeat: False

# Restricted user group. The users in the specified groups only have
# access to master server. Will always direct them to google storage for logs
# rather than drones or shards.
restricted_groups:  USE SHADOW RESTRICTED_GROUPS

# The tko parser will use these database settings.
# This is for sharding: Even when sharding, the results (tko tables) should
# still be written to the master database.
global_db_host:
global_db_database:
global_db_type:
global_db_user:
global_db_password:
global_db_query_timeout:
global_db_min_retry_delay:
global_db_max_retry_delay:

[AUTOTEST_SERVER_DB]
# Server database setting. Fall back to use AFE database settings.
database: chromeos_lab_servers

[SHARD]
# If this is not None, the instance is considered a shard.
# The value should be the hostname of the local shard.
shard_hostname:
heartbeat_pause_sec: 60

[AUTOSERV]
# Autotest potential install paths
client_autodir_paths: /usr/local/autotest,/usr/local/autodir
# White list of tests with run time measurement enabled.
measure_run_time_tests: desktopui_ScreenLocker,login_LoginSuccess,security_ProfilePermissions

# Don't export tko job information to disk file.
export_tko_job_to_file: False
# If True, autoserv won't interact with real devices.
# It will sleep 10 seconds and then pass successfully.
testing_mode: False

# Directory stores LXC containers
container_path: /usr/local/autotest/containers
# Shared mount point for host mounts for LXC containers.
container_shared_host_path: /usr/local/autotest/containers/host

# `container_base` is replaced by `container_base_folder_url` and `container_base_name`
# The setting is kept for backwards compatibility reason.
# Download link for base image of container.
container_base: http://storage.googleapis.com/chromeos-image-archive/autotest-containers/base.tar.xz

# URL to tbe folder contains base container image.
container_base_folder_url: https://storage.googleapis.com/abci-ssp/autotest-containers

# Name of the base container.
# `base` is the container with the smallest size, still used by MobLab.
container_base_name: base

# Enable server-side package using container
# TODO(dshi): Change this to True after SSP via container is rolled out.
enable_ssp_container: False

# 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.
min_version_support_ssp: 6986
min_launch_control_build_id_support_ssp: 2675445

# Set to True to allow servod to be started automatically in Moblab.
auto_start_servod: False

# Enable test result throttling.
enable_result_throttling: False
# Default maximum test result size in KB.
default_max_result_size_KB: 20000

[CLIENT]
drop_caches: False
drop_caches_between_iterations: False
# Specify an alternate location to store the test results
#output_dir: /var/log/autotest/
output_dir:
#wireless_ssid: SEE SHADOW CONFIG
#wireless_password: SEE SHADOW CONFIG
#wireless_security: SEE SHADOW CONFIG
# The zone that all Chrome OS devices are in if they are in a lab.
dns_zone: cros.corp.google.com
# If necessary, specify a proxy for client downloads
http_proxy:
https_proxy:

android_board_name_bat:bat_land
android_board_name_dragon:ryu
android_board_name_flo:razor
android_board_name_flo_lte:razorg
android_board_name_gm4g_sprout:seed_l8150
android_board_name_flounder:volantis
android_board_name_flounder_lte:volantis

android_artifacts_volantis:bootloader_image,zip_images
android_standalone_images_volantis:bootloader.img

android_artifacts_bat_land:zip_images
android_standalone_images_bat_land:
android_zipped_images_bat_land:boot.img,system.img,cache.img,userdata.img

# If set, sso_client is used from client tools to access AFE/TKO RPC servers.
# This is needed to access AFE via uberproxy endpoints.
# Cf b/32303896: Direct HTTP access to lab servers will soon no longer be
# possible from developer workstations. They must instead use the uberproxy
# endpoints (with this feature enabled).
# ** This should never be set for communication within the lab. **
use_sso_client: False

[SERVER]
hostname: cautotest
# Turn on RPC Logging
rpc_logging: False
# Note the user that is running the webserver has to be able to write
# to the below directory/file otherwise the frontend will not work with logging
rpc_log_path: /usr/local/autotest/logs/rpcserver.log
# Number of old logs to keep around
rpc_num_old_logs: 5
rpc_max_log_size_mb: 20
# Transfer RPC logs to a RPC logging server
rpc_logserver: False
# Minimum amount of disk space required for AutoTest in GB
gb_diskspace_required: 0.7
# Minmum number of i-nodes for stateful, in 1000 i-node units.
kilo_inodes_required: 100
# Rialto has a small disk size, so reduce the required inodes for it.
# See https://code.google.com/p/chrome-os-partner/issues/detail?q=45875
kilo_inodes_required_veyron_rialto: 55
kilo_inodes_required_arkham: 50
kilo_inodes_required_storm: 50
kilo_inodes_required_whirlwind: 50

# Minimum amount of disk space required for encrypted stateful partition in GB
gb_encrypted_diskspace_required: 0.1
# If for some reason you don't want to rely on the Mail Transport Agent
# installed on this machine, you can provide an SMTP server directly here.
# If none provided, defaults to 'localhost', which tries to use the MTA
# configured on the machine to send the messages.
smtp_server:
smtp_port:
smtp_user:
smtp_password:
# Time in hours to wait before giving up on crash collection.
crash_collection_hours_to_wait: 0.001

# If True, use autotest_server_db to verify the host before running services
# like scheduler, host-scheduler and suite-scheduler.
use_server_db: False

# AFE server connected to the master DB.
global_afe_hostname: cautotest

# Credential directory where all credentials files should go. If not specified,
# will look for credentils in autotest root dir.
creds_dir:

# Set to True to upload results to prod Sponge server.
use_prod_sponge_server: False

[SCHEDULER]
die_on_orphans: False
enable_scheduler: True
notify_email_errors: USE SHADOW NOTIFY_EMAIL_ERRORS
notify_email_statuses: Completed,Failed,Aborted
max_processes_per_drone: 1000
max_parse_processes: 100
max_transfer_processes: 50
tick_pause_sec: 5
minimum_tick_sec: 0.5
host_scheduler_minimum_tick_sec: 3
clean_interval_minutes: 5
drones: SET IN SHADOW CONFIG
drone_installation_directory: /usr/local/autotest
results_host: localhost
results_host_installation_directory:
secs_to_wait_for_atomic_group_hosts: 600
pidfile_timeout_mins: 300
max_pidfile_refreshes: 2000
gc_stats_interval_mins: 360
# set nonzero to enable periodic reverification of all dead hosts
reverify_period_minutes: 30
reverify_max_hosts_at_once: 30
drone_sets_enabled: False
# default_drone_set_name: This is required if drone sets are enabled.
default_drone_set_name:
# Disable archiving by default.
enable_archiving: False
copy_task_results_back: False
copy_parse_log_back: False
tick_debug: True
extra_debugging: False
# max_repair_limit sets how many times a single HQE will go through
# repairing -> requeued -> fail -> repairing
max_repair_limit: 2
max_provision_retries: 0
drone_build_externals: False
inline_host_acquisition: USE SHADOW INLINE_HOST_ACQUISITION
# If True, the drone manager creates a thread for each drone.
# Otherwise, drones are handled in a single thread.
threaded_drone_manager: True

[HOSTS]
wait_up_processes:
default_protection: NO_PROTECTION
# Time in seconds to wait for a machine to come back after reboot.
default_reboot_timeout: 240
# Time in seconds to wait for a machine to go down prior to reboot.
wait_down_reboot_timeout: 120
# Time in seconds to wait before generating a warning if a host has not gone
# down for reboot.
wait_down_reboot_warning: 30
# Time in hours to wait for a host to recover after a down state.
hours_to_wait_for_recovery: 0.01

[AUTOSERV]
# TODO(akeshet): Eliminate this "option" since, now that we've eliminated
# paramiko, raw_ssh is the only supported one.
ssh_engine: raw_ssh
# Set to True to take advantage of OpenSSH-based connection sharing. This would
# have bigger performance impact when ssh_engine is 'raw_ssh'.
enable_master_ssh: True

[PACKAGES]
# in days
custom_max_age: 1
# in Gigabyte
minimum_free_space: 1
serve_packages_from_autoserv: True

[CROS]
# If afe_stable_versions table does not have the stable version for a given
# board and there is no entry of board `DEFAULT`, following value defined in
# stable_cros_version will be used as the stable CrOS version.
# Use `cli/atest stable_version` command to view or manage stable versions.
# WARNING! Edit following setting will NOT work if stable versions are stored
# in afe_stable_versions table already!
stable_cros_version: R54-8743.44.0
stable_build_pattern: %s-release/%s
source_tree: /usr/local/google/chromeos
gs_offloading_enabled: True
image_storage_server: gs://chromeos-image-archive/
results_storage_server: gs://chromeos-autotest-results/
# Base url to open a file from Google Storage for `results_storage_server`
gs_file_base_url: https://storage.cloud.google.com/chromeos-autotest-results/

cts_results_server: gs://chromeos-cts-results/
cts_apfe_server: gs://chromeos-cts-apfe/
ctsdelta_results_server: gs://chromeos-ctsdelta-results/
ctsdelta_apfe_server: gs://chromeos-ctsdelta-apfe/
dev_server: http://100.115.245.199:8082, http://100.115.245.200:8082, http://100.115.219.131:8082, http://100.115.219.132:8082, http://100.115.219.133:8082, http://100.115.219.134:8082, http://100.115.219.137:8082
canary_channel_server: gs://chromeos-releases/canary-channel/
# chromeos-crash1.cros
crash_server: http://172.17.40.24:8082, http://100.107.160.6:8082, http://100.107.160.5:8082
sharding_factor: 1
infrastructure_user: chromeos-test
gs_offloader_use_rsync: False
gs_offloader_multiprocessing: False
# Cloud pubsub
cloud_notification_enabled: False
# The cloud pubsub topic where notifications are sent to.
cloud_notification_topic:

# Naming convention of Android build.
android_build_name_pattern: %\(branch\)s/%\(target\)s/%\(build_id\)s

firmware_url_pattern: %s/static/%s/firmware_from_source.tar.bz2
factory_image_url_pattern: %s/static/canary-channel/%s/factory_test/chromiumos_factory_image.bin
factory_artifact: factory_image
image_url_pattern: %s/update/%s

# log_url_pattern.
# First argument: protocol://hostname
# Second argument: job name (e.g. 1-chromeos-test)
log_url_pattern: %s/tko/retrieve_logs.cgi?job=/results/%s/

package_url_pattern: %s/static/%s/autotest/packages
servo_board: beaglebone_servo

# TODO: Remove these released RO builds once they are migrated to Goldeneye.
# Released RO builds for running FAFT to qualify an AU firmware in which the
# RW portion comes from the latest build and the RO portion comes these builds.
# Each value is a comma-separated list. The most recent build is on the left.
RELEASED_RO_BUILDS_auron_paine: auron_paine-firmware/R39-6301.58.6
RELEASED_RO_BUILDS_auron_yuna: auron_yuna-firmware/R39-6301.59.5
RELEASED_RO_BUILDS_banjo: banjo-firmware/R34-5216.334.4
RELEASED_RO_BUILDS_buddy: buddy-firmware/R39-6301.202.5
RELEASED_RO_BUILDS_candy: candy-firmware/R34-5216.310.1
RELEASED_RO_BUILDS_celes: celes-firmware/R46-7287.92.3
RELEASED_RO_BUILDS_cyan: cyan-firmware/R46-7287.57.32,cyan-firmware/R46-7287.57.25
RELEASED_RO_BUILDS_gandof: gandof-firmware/R39-6301.155.9
RELEASED_RO_BUILDS_gnawty: gnawty-firmware/R34-5216.239.34,gnawty-firmware/R34-5216.239.16
RELEASED_RO_BUILDS_guado: guado-firmware/R39-6301.108.4
RELEASED_RO_BUILDS_heli: heli-firmware/R34-5216.392.4
RELEASED_RO_BUILDS_lulu: lulu-firmware/R39-6301.136.39,lulu-firmware/R39-6301.136.16
RELEASED_RO_BUILDS_mccloud: mccloud-firmware/R36-5827.14.0
RELEASED_RO_BUILDS_ninja: ninja-firmware/R34-5216.383.7
RELEASED_RO_BUILDS_orco: orco-firmware/R34-5216.362.7
RELEASED_RO_BUILDS_panther: panther-firmware/R32-4920.24.26
RELEASED_RO_BUILDS_rikku: rikku-firmware/R39-6301.110.4
RELEASED_RO_BUILDS_samus: samus-firmware/R39-6300.102.0,samus-firmware/R39-6300.90.0
RELEASED_RO_BUILDS_squawks: squawks-firmware/R34-5216.152.22,squawks-firmware/R34-5216.152.21,squawks-firmware/R34-5216.152.17
RELEASED_RO_BUILDS_tricky: tricky-firmware/R36-5829.12.0
RELEASED_RO_BUILDS_veyron_jaq: veyron_jaq-firmware/R41-6588.160.0,veyron_jaq-firmware/R41-6588.92.0,veyron_jaq-firmware/R41-6588.44.0
RELEASED_RO_BUILDS_veyron_jerry: veyron_jerry-firmware/R41-6588.160.0,veyron_jerry-firmware/R41-6588.92.0,veyron_jerry-firmware/R41-6588.40.0
RELEASED_RO_BUILDS_veyron_mickey: veyron_mickey-firmware/R41-6588.168.0,veyron_mickey-firmware/R41-6588.159.0
RELEASED_RO_BUILDS_veyron_mighty: veyron_mighty-firmware/R41-6588.160.0,veyron_mighty-firmware/R41-6588.97.0,veyron_mighty-firmware/R41-6588.51.0
RELEASED_RO_BUILDS_veyron_minnie: veyron_minnie-firmware/R41-6588.160.0,veyron_minnie-firmware/R41-6588.92.0
RELEASED_RO_BUILDS_veyron_speedy: veyron_speedy-firmware/R41-6588.160.0,veyron_speedy-firmware/R41-6588.92.0,veyron_speedy-firmware/R41-6588.55.0
RELEASED_RO_BUILDS_wolf: wolf-firmware/R30-4389.24.62,wolf-firmware/R30-4389.24.58,wolf-firmware/R30-4389.24.39

# Username and password for connecting to remote power control switches of
# the "Sentry Switched CDU" type
rpm_sentry_username: fake_user
rpm_sentry_password: fake_password
rpm_frontend_uri: http://chromeos-server160.cbf.corp.google.com:9999

# Path the devserver source tree, used for spawning devserver from autoserv in
# some of the tests. Please override in local shadow config file.
#devserver_dir: /path/to/src/platform/dev

lab_status_url: http://chromiumos-lab.appspot.com/current?format=json

sam_instances: cautotest
test_instance: chromeos-autotest.cbf
extra_servers: chromeos-mcp

skip_devserver_health_check: True

# The swarming instance that will be used for golo proxy
swarming_proxy:

# Limit the number of files in the result folder.
gs_offloader_limit_file_count: False

# A list of pools that allow to be repaired using firmware repair.
pools_support_firmware_repair: faft-test,faft-test-tot,faft-test-experiment

# A list of restricted subnets, in the format of ip/mask_bits, e.g., 10.0.0.1/24
restricted_subnets:

# Flags to enable/disable drone election in resctricted subnet.
enable_drone_in_restricted_subnet: False

# Set to True for test to prefer devserver in the same subnet.
prefer_local_devserver: False

# Flags to enable/disable SSH tunnel connection for servo host.
enable_ssh_tunnel_for_servo: True

# Flags to enable/disable SSH tunnel connection for chameleon host.
enable_ssh_tunnel_for_chameleon: False

# Flags to enable/disable SSH connection for devserver. This only applies to
# devservers inside restricted subnet, specified in CROS/restricted_subnets.
# If a devserver is not in any restriceted subnet, test will still make direct
# http call even if this option is set to True.
enable_ssh_connection_for_devserver: False

# Flags to enable/disable get control file contents in batch.
enable_getting_controls_in_batch: False

# Flags to enable/disable making devserver trigger auto-update for cros host.
enable_devserver_trigger_auto_update: False

# File for hwid key.
HWID_KEY: no_hwid_labels

[BUG_REPORTING]
gs_domain: https://storage.cloud.google.com/
chromeos_image_archive: chromeos-image-archive/
arg_prefix: ?arg=
retrieve_logs_cgi: http://ubercautotest.corp.google.com/tko/retrieve_logs.cgi?job=/
generic_results_bin: results/
debug_dir: debug/
job_view = %s/afe/#tab_id=view_job&object_id=%s
crbug_url: https://code.google.com/p/chromium/issues/detail?id=%s
gs_file_prefix: gs://
credentials: USE SHADOW CREDENTIALS
client_id: USE SHADOW CLIENT_ID
client_secret: USE SHADOW CLIENT_SECRET
scope: USE SHADOW SCOPE
wmatrix_retry_url: https://wmatrix.googleplex.com/retry_teststats/?days_back=30&tests=%s
wmatrix_test_history_url: https://wmatrix.googleplex.com/unfiltered?hide_missing=True&tests=%s
stainless_retry_url:
stainless_test_history_url: https://stainless.corp.google.com/search?test=%s&first_date=%s&last_date=%s&row=model&col=build&view=matrix
pool_health_cc: chromeos-infra-eng@grotations.appspotmail.com
pool_health_labels: recoverduts,Pri-1
pool_health_components: Infra>Client>ChromeOS


[NOTIFICATIONS]
chromium_build_url: http://build.chromium.org/p/chromiumos/
sheriffs: USE SHADOW SHERIFFS
lab_sheriffs: USE SHADOW SHERIFFS
gmail_api_credentials:
gmail_api_credentials_test_failure:


[POOL_INSTANCE_SHARDING]
# Add a mapping of `pool_name: server` to your shadow config to have run_suite
# send all of the suites for pool to the specified server.

[UPDATE_COMMANDS]
# N.B.  deploy_production_local.py guarantees that these commands
# execute from the root of the Autotest source repository
# (i.e. /usr/local/autotest).
afe: ./utils/compile_gwt_clients.py -c autotest.AfeClient
apache: sudo service apache2 reload
build_externals: ./utils/build_externals.py
migrate: ./database/migrate.py sync
test_importer: ./utils/test_importer.py
tko: ./utils/compile_gwt_clients.py -c autotest.TkoClient

# [UPDATE]
# Set this with command names that should run after every update.
# commands: build_externals test_importer etc
# Set this with service names that should be restarted after every update.
# services:

[SSP]
# Section for configuration needed for server-side packaging.
# User that runs the autoserv process in the host of the container.
# The user is passed to a container through global config file so a process
# running inside the container can use the same user to make RPC.
user:

[ANDROID]
image_url_pattern: %s/static/%s
stable_version_dragonboard: git_mnc-brillo-dev/dragonboard-userdebug/2512766
stable_version_edison: git_nyc-jaqen-dev/jaqen_edison-userdebug/2979181
package_url_pattern: %s/static/%s

[LUCIFER]
lucifer_level: STARTING
binaries_path: /usr/bin
jobdir: /usr/local/autotest/leases
gcp_creds:

[LXC_POOL]
use_lxc_pool: False
combine_sudos: False

[SKYLAB]
respect_static_labels: False
respect_static_attributes: False
