1.\" Copyright 2012 Google Inc. 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions are 6.\" met: 7.\" 8.\" * Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" * Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" * Neither the name of Google Inc. nor the names of its contributors 14.\" may be used to endorse or promote products derived from this software 15.\" without specific prior written permission. 16.\" 17.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21.\" OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23.\" LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27.\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28.Dd February 9, 2013 29.Dt KYUA.CONF 5 30.Os 31.Sh NAME 32.Nm kyua.conf 33.Nd Configuration file for the kyua tool 34.Sh SYNOPSIS 35.Fn syntax "int version" 36.Pp 37Variables: 38.Va architecture , 39.Va platform , 40.Va test_suites , 41.Va unprivileged_user . 42.Sh DESCRIPTION 43The configuration of Kyua is a simple collection of key/value pairs called 44configuration variables. There are configuration variables that have a 45special meaning to the runtime engine implemented by 46.Xr kyua 1 , 47and there are variables that only have meaning in the context of particular 48test suites. 49.Pp 50Configuration files are Lua scripts. 51In their most basic form, their whole purpose is to assign values to 52variables, but the user has the freedom to implement any logic he desires 53to compute such values. 54The general structure of a configuration file is: 55.Bd -literal -offset indent 56syntax(2) 57 58-- Assign internal variables. 59architecture = 'foo' 60platform = 'bar' 61 62-- Assign test-suite variables. All of these must be strings. 63test_suites.NetBSD.file_systems = 'ffs ext2fs' 64test_suites.X11.graphics_driver = 'vesa' 65.Ed 66.Ss File versioning 67Every 68.Nm 69file starts with a call to 70.Fn syntax "int version" . 71This call determines the specific schema used by the file so that future 72backwards-incompatible modifications to the file can be introduced. 73.Pp 74Any new 75.Nm 76file should set 77.Fa version 78to 79.Sq 2 . 80.Ss Runtime configuration variables 81The following variables are internally recognized by 82.Xr kyua 1 : 83.Bl -tag -width XX 84.It Va architecture 85Name of the system architecture (aka processor type). 86.It Va platform 87Name of the system platform (aka machine type). 88.It Va unprivileged_user 89Name or UID of the unprivileged user. 90.Pp 91If set, the given user must exist in the system and his privileges will be 92used to run test cases that need regular privileges when 93.Xr kyua 1 94is executed as root. 95.El 96.Ss Test-suite configuration variables 97Each test suite is able to recognize arbitrary configuration variables, and 98their type and meaning is specific to the test suite. Because the 99existence and naming of these variables depends on every test suite, this 100manual page cannot detail them; please refer to the documentation of the 101test suite you are working with for more details on this topic. 102.Pp 103Test-suite specific configuration variables are defined inside the 104.Va test_suites 105dictionary. 106The general syntax is: 107.Bd -literal -offset indent 108test_suites.<test_suite_name>.<variable_name> = <value> 109.Ed 110.Pp 111where 112.Va test_suite_name 113is the name of the test suite, 114.Va variable_name 115is the name of the variable to set, and 116.Va value 117is a value. 118The value can be a string, an integer or a boolean. 119.Sh FILES 120.Bl -tag -width XX 121.It __EGDIR__/kyua.conf 122Sample configuration file. 123.El 124.Sh SEE ALSO 125.Xr kyua 1 126