xref: /netbsd-src/external/bsd/kyua-cli/dist/doc/kyua.conf.5.in (revision 6b3a42af15b5e090c339512c790dd68f3d11a9d8)
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