[AUTOTEST_WEB]
# IP == cautotest-mysql, see http://crosbug.com/38773
# TODO(milleral): Switch back to DNS name when bug is fixed
# master db: chromeos-server25.mtv
host: 172.24.26.45
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/
# IP == cautotest-mysql, see http://crosbug.com/38773
readonly_host: 172.24.26.45
readonly_user: chromeosqa-read
readonly_password: qyBM6kDu
query_timeout: 3600
min_retry_delay: 20
max_retry_delay: 60
graph_cache_creation_timeout_minutes: 10
parameterized_jobs: False
# 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

# 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
# Incrementally update TKO with the status as the test runs.
incremental_tko_parsing: 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

# `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: http://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

support_builds_arg_in_suite_job: True

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

# Index to upload metadata to.
metadata_index:

[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

# Suite scheduler afe server
# If no specified, will default to [SERVER]: hostname
suite_scheduler_afe:

# 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:

[SCHEDULER]
die_on_orphans: False
enable_scheduler: True
notify_email: chromeos-test-cron+cautotest@google.com
notify_email_errors: USE SHADOW NOTIFY_EMAIL_ERRORS
notify_email_from: chromeos-autotest@google.com
notify_email_statuses: Completed,Failed,Aborted
max_processes_per_drone: 1000
max_processes_warning_threshold: 0.8
max_parse_processes: 100
max_transfer_processes: 50
tick_pause_sec: 5
minimum_tick_sec: 0.5
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]
# Autotest has 2 implementations of SSH based hosts, the default (raw_ssh), and
# another one based on the python SSH library paramiko (paramiko).
# You can change the default 'raw_ssh' to 'paramiko' if you want to.
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
# Autotest server operators *really should* set this to True, specially if
# using ssh_engine 'paramiko'.
require_atfork_module: False
# Set to False to disable ssh-agent usage with paramiko
use_sshagent_with_paramiko: True
enable_server_prebuild: False

[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: R49-7834.42.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/
cts_results_server: gs://chromeos-cts-results/
cts_apfe_server: gs://chromeos-cts-apfe/
# dev_server_hosts is the list of all servers running a devserver instance
# (regardless of CrashServer/ImageServer/etc.) that should be considered for
# monitoring/deploy actions.  You should very likely keep this list in sync with
# `dev_server` and `crash_server` unless you're very temporarily pulling a
# server out of rotation.
dev_server_hosts: chromeos-devserver1, chromeos-devserver2, chromeos-devserver3, chromeos-devserver4, chromeos-devserver5, chromeos-devserver6, chromeos-devserver7, chromeos-crash1, chromeos2-devserver6, chromeos2-devserver7, chromeos2-devserver5
dev_server: http://172.17.40.27:8082, http://100.107.160.1:8082, http://100.107.160.2:8082, http://172.17.40.17:8082, http://172.17.40.20:8082, http://172.17.40.19:8082, http://100.107.160.3:8082, http://100.107.160.4:8082, http://172.17.40.22:8082, http://100.107.160.7: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

# 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: http://%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-rpmserver2.cbf.corp.google.com:9999
rpm_recovery_boards: stumpy,kiev

# 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

# statsd server feeding Graphite (swift-capsule-791 GCE project)
STATSD_SERVER: 146.148.70.158
STATSD_PORT: 8125


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

# ES_HOST's hostname is chromeos-metadb-test.cbf.corp.google.com
# This es server is used for testing purposes only.
ES_HOST: 172.25.65.90
ES_PORT: 9200
ES_UDP_PORT: 9700
ES_USE_HTTP: False

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: False

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

# Flags to enable/disable SSH connection for devserver.
enable_ssh_connection_for_devserver: False

# Flags to enable/disable SSH tunnel connection for moblab host.
enable_ssh_tunnel_for_moblab: False

# Flags to enable/disable get control file contents in batch.
enable_getting_controls_in_batch: 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://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/
generic_results_bin: results/
debug_dir: debug/
buildbot_builders: http://chromegw.corp.google.com/i/chromeos/builders/
build_prefix: build/
job_view = http://%s/afe/#tab_id=view_job&object_id=%s
tracker_url: https://code.google.com/p/chromium/issues/detail?id=
gs_file_prefix: gs://
chromium_email_address = @chromium.org
credentials: USE SHADOW CREDENTIALS
monorail_server:
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


[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]
afe: AUTOTEST_REPO/utils/compile_gwt_clients.py -c autotest.AfeClient
apache: sudo service apache2 reload
build_externals: AUTOTEST_REPO/utils/build_externals.py
migrate: AUTOTEST_REPO/database/migrate.py sync
test_importer: AUTOTEST_REPO/utils/test_importer.py
tko: AUTOTEST_REPO/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:

[ACTS]
# Section for ACTS configuration.
acts_config_folder:

[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
