Skip to content
Lucas Meneghel Rodrigues edited this page Sep 22, 2011 · 4 revisions

Global Configuration

The global configuration is responsible for configuring many different aspects of the autotest programs. The client, server, scheduler, some portions of the frontend as well as other stand alone scripts require this file to get specific information about your setup. Below is a list of sections and in each section the options available in the configuration are described.

If you are making a stand alone checkout of the autotest client, it will warn you that you might want to create a default config file. If you want to do so, create a global_config.ini file inside the client directory with the documented keys on this page, it will look something like this:

[CLIENT]
drop_caches: True
drop_caches_between_iterations: True

For the other autotest programs, it's necessary that you have global_config.ini set on a proper location.

CLIENT

This section describes the global config [CLIENT] section.

Key Description
drop_caches If the autotest client will drop caches for the client machine between test executions
drop_caches_between_iterations If the autotest client will drop caches for the client machine between test iterations executions

TKO

This section describes the global config [TKO] section.

Database configuration

Parameters for configuring the TKO database connections, in addition to those in Database Config.

Key Description
readonly_host The host name where a read-only TKO database is located
readonly_user User used to connect to the read-only database
readonly_password The readonly_user's password

Retry configuration

The db.py API for connecting to the TKO database includes support for automatically reconnecting and retrying queries when they fail due to OperationalErrors (assuming this is possible, i.e. when autocommit is in use).

Key Description
query_timeout Maximum number of seconds to wait before no giving up and no longer retrying
min_retry_delay The minimum number of seconds to wait after an OperationalError before reconnecting and retrying
max_retry_delay The maximum number of seconds to wait after an OperationalError before reconnecting and retrying

Graph configuration

Configuration parameters for the TKO graphing interface

Key Description
graph_cache_creation_timeout_minutes How frequently cached images for embedded graphing queries will be updated

AUTOTEST_WEB

Parameters for configuring the frontend and scheduler database connections, in addition to those in Database Config.

Key Description
job_timeout_default Default timeout (in hours) for new jobs
base_url URL to your Autotest server's AFE interface. You only need this option if the URL is something other than http://$hostname/afe/, where $hostname is the "hostname" value from the SERVER section.

AUTOSERV

Key Description
client_autodir_paths A comma-delimited list of paths where autoserv will attempt to install clients onto test machines

SERVER

Key Description
hostname The hostname of the server running the Autotest web interface.

SCHEDULER

This section describes the [SCHEDULER] section of the global configuration. Note that the scheduler uses the Database Config parameters from the AUTOTEST_WEB section.

Key Description
notify_email Email address to receive warning and error messages from the scheduler
notify_email_from Email address from which to send scheduler messages; defaults to the user running the scheduler
notify_email_statuses When a host in a job reaches one of these statuses, send email to the email_list field of that job. If empty, email will only be sent when the whole job completes.
max_processes_per_drone Maximum number of running Autoserv processes at once on a single server
max_jobs_started_per_cycle Maximum number of Autoserv processes started within one scheduler cycle
max_parse_processes Maximum number of parser processes running at once
tick_pause_sec The pause (in seconds) between the end of a tick and the beginning of the next tick
clean_interval_minutes Time (in minutes) between database sweeps to abort timed-out jobs
synch_job_start_timeout_minutes Time (in minutes) after which a synchronous job that has not yet started running will be aborted)
results_host A host to offload results to via rsync/scp Default: localhost
results_host_installation_directory If you installed your results_host in a different location than the standard /usr/local/autotest, this often will be blank

Distributed execution parameters

The following parameters only need to be changed in a Distributed Server Setup.

drones List of hostnames to act as drones (machines that run Autoserv)
drone_installation_directory Directory in which Autotest is installed on drones, from which Autoserv will be run
results_host Hostname to copy results to after job completion
max_transfer_processes Maximum number of rsync/scp transfers to the results repository at once.

The following are optional parameters that can be used in a Distributed Server Setup.

archive_host An additional hostname to check for results files when they cannot be found elsewhere after a user requests logs through the web interface
$hostname_disabled If set to 1, the drone $hostname will be disabled -- no new jobs will run, but existed jobs will be seen to completion
$hostname_max_processes Overrides max_processes_per_drone for a particular drone

HOSTS

This section describes the [HOSTS] section of the global configuration.

Key Description
wait_up_processes A comma-delimited list of processes that Host.wait_up expects to find one of before it considers the host "up"
default_protection Default level of protection to put on new hosts. See HostProtections

PACKAGES

This section describes the [PACKAGES] section of the global configuration.

Key Description
fetch_location http://myserver.blah.com
upload_location /usr/local/autotest/packages
serve_packages_from_autoserv If set to True, autoserv will act as a last-resort package repository, allowing you to use the packaging system without setting up HTTP repositories. This defaults to True, but in large-scale production setups where you expect to run a large number of simultaneous autoserv processes you may want to disable this as autoserv builds up the package tarballs on-demand and so this is significantly more expensive than serving static packages over HTTP.
Clone this wiki locally