[fields]
sysname TEXT
fsname TEXT
datapath TEXT
# refareas can be searched to find previous runs
# the path points to where megatest.db exists
[refareas]
area1 /tmp/oldarea/megatest
[include ./configs/mt_include_1.config]
[dashboard]
pre-command xterm -geometry 180x20 -e "
post-command |& tee results.log ;echo Press any key to continue;bash -c 'read -n 1 -s'" &
testsort -event_time
[misc]
home #{shell readlink -f $MT_RUN_AREA_HOME}
parent #{shell readlink -f $MT_RUN_AREA_HOME/..}
[tests-paths]
1 #{get misc parent}/simplerun/tests
[setup]
# Set launchwait to no to use the more agressive code that does not wait for the launch to complete before proceeding
# this may save a few milliseconds on launching tests
# launchwait no
waivercommentpatt ^WW\d+ [a-z].*
incomplete-timeout 1
# set the dbdir, default is linktree
dbdir #{getenv MT_RUN_AREA_HOME}/db/
# wait for runs to completely complete. yes, anything else is no
run-wait yes
# If set to "default" the old code is used. Otherwise defaults to 200 or uses
# numeric value given.
#
runqueue 20
# Default runtimelim 1d 1h 1m 10s
#
runtimelim 20m
# Deadtime - when to consider tests dead (i.e. haven't heard from them in too long)
# Number in seconds, set to 20 seconds here to trigger a little trouble. Default is
# 1800
#
deadtime 600
# It is possible (but not recommended) to override the rsync command used
# to populate the test directories. For test development the following
# example can be useful
#
testcopycmd cp --remove-destination -rsv TEST_SRC_PATH/. TEST_TARG_PATH/. >> TEST_TARG_PATH/mt_launch.log 2>> TEST_TARG_PATH/mt_launch.log
# or for hard links
# testcopycmd cp --remove-destination -rlv TEST_SRC_PATH/. TEST_TARG_PATH/.
# FULL or 2, NORMAL or 1, OFF or 0
synchronous 0
# Throttle roughly scales the db access milliseconds to seconds delay
throttle 0.2
# Max retries allows megatest to re-check that a tests status has changed
# as tests can have transient FAIL status occasionally
maxretries 20
# Setup continued.
[setup]
# override the logview command
#
logviewer (%MTCMD%) 2> /dev/null > /dev/null
# override the html viewer launch command
#
# htmlviewercmd firefox -new-window
htmlviewercmd arora
# -runtests automatically deletes the records for tests with the listed states on starting up a run allowing them to re-run
# (nb// this is in addition to NOT_STARTED which is automatically re-run)
#
allow-auto-rerun INCOMPLETE ZERO_ITEMS
# could add: STUCK STUCK/DEAD UNKNOWN KILLED KILLREQ PREQ_DISCARD
[validvalues]
state start end 0 1 - 2
status pass fail n/a 0 1 running - 2
# These are set before all tests, override them
# in the testconfig [pre-launch-env-overrides] section
[env-override]
# This variable is honored by the loadrunner script. The value is in percent
MAX_ALLOWED_LOAD 200
# MT_XTERM_CMD overrides the terminal command
# MT_XTERM_CMD xterm -bg lightgreen -fg black
SPECIAL_ENV_VARS overide them here - should be seen at launch and in the runs
TESTVAR [system readlink -f .]
DEADVAR [system ls]
VARWITHDOLLAR $HOME/.zshrc
WACKYVAR #{system ls > /dev/null}
WACKYVAR2 #{get validvalues state}
WACKYVAR3 #{getenv USER}
WACKYVAR4 #{scheme (+ 5 6 7)}
WACKYVAR5 #{getenv sysname}/#{getenv fsname}/#{getenv datapath}
WACKYVAR6 #{scheme (args:get-arg "-target")}
PREDICTABLE the_ans
MRAH MT_RUN_AREA_HOME=#{getenv MT_RUN_AREA_HOME}
# The empty var should have a definition with null string
EMPTY_VAR
WRAPPEDVAR This var should have the work blah thrice: \
blah \
blah
MAX_ALLOWED_LOAD 200
# XTERM [system xterm]
# RUNDEAD [system exit 56]
[server]
# Use http instead of direct filesystem access
transport http
# transport fs
# transport nmsg
synchronous 0
# If the server can't be started on this port it will try the next port until
# it succeeds
port 9080
# This server will keep running this number of hours after last access.
# Three minutes is 0.05 hours
# timeout 0.025
timeout 0.061
# Server is required - slower but more resistant to Sqlite issues.
required yes
# Start server when average query takes longer than this
# server-query-threshold 55500
server-query-threshold 100
timeout 0.01
# daemonize yes
# hostname #{scheme (get-host-name)}
## disks are:
## name host:/path/to/area
## -or-
## name /path/to/area
[disks]
disk0 /foobarbazz
disk1 not-a-disk
[include ./configs/mt_include_2.config]
[include #{getenv USER}_testing.config]
[jobgroups]
# NOTE: job groups will falsely count the toplevel test as a job. If possible add N
# to your jobgroups where N is the number of parallel runs you are likely to see
#
sqlite3 6
blockz 10
# to your jobgroups where N is the number of parallel runs you are likely to see
#
#======================================================================
# Machine flavors
#
# These specify lists of hosts or scripts to use or call for various
# flavors of task.
#
#======================================================================
[flavors]
plain hosts: xena, phoebe
strong command: NBFAKE_HOST=zeus nbfake
arm hosts: cubian
[archive]
# use machines of these flavor
useflavors plain
targsize 2G
# minimum space required on an archive disk before allowing archiving to start (MB)
minspace 10
[archive-disks]
# Archives will be organised under these paths like this:
# <testsuite>/<creationdate>
# Within the archive the data is structured like this:
# <target>/<runname>/<test>/
disk0 /tmp/#{getenv USER}/adisk1
# Uncomment these to emulate a job queue with a long time (look in bin/sleeprunner for the time)
[jobtools]
launcher #{scheme (if (equal? (getenv "datapath") "none") "nbfake" "sleeprunner")}