]> git.ipfire.org Git - people/jschlag/nitsi.git/blob - man/nitsi.recipe.xml
Improve log output
[people/jschlag/nitsi.git] / man / nitsi.recipe.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE refentry PUBLIC "-//OASIS/DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4
5 <refentry id="nitsi.recipe">
6 <refentryinfo>
7 <title>nitsi.recipe</title>
8 <productname>nitsi</productname>
9
10 <authorgroup>
11 <author>
12 <contrib>Developer</contrib>
13 <firstname>Jonatan</firstname>
14 <surname>Schlag</surname>
15 <email>jonatan.schlag@ipfire.org</email>
16 </author>
17 </authorgroup>
18 </refentryinfo>
19
20 <refmeta>
21 <refentrytitle>nitsi.recipe</refentrytitle>
22 <manvolnum>5</manvolnum>
23 </refmeta>
24
25 <refnamediv>
26 <refname>nitsi.recipe</refname>
27 <refpurpose>Recipe file for a nitsi test</refpurpose>
28 </refnamediv>
29
30
31 <refsect1>
32 <title>Description</title>
33
34 <para>
35 The <filename>recipe</filename> file contains the actions for a test.
36 It consists of lines which state what commands should be executed on which machine.
37 </para>
38 </refsect1>
39
40 <refsect1>
41 <title>Basic Syntax</title>
42
43 <para>
44 All lines follow the following syntax:
45 </para>
46
47 <variablelist>
48 <varlistentry>
49 <term>
50 <option>machine: command</option>
51 </term>
52
53 <listitem>
54 <para>
55 The machine name is the first part of the line followed by ':'.
56 After the ':' follows the command which should be executed.
57 </para>
58 </listitem>
59 </varlistentry>
60 </variablelist>
61 </refsect1>
62
63 <refsect1>
64 <title>Extended Syntax</title>
65
66 <para>
67 The following syntax examples shows how you could solve common problems.
68 </para>
69
70 <variablelist>
71 <varlistentry>
72 <term>
73 <option>machine !: command</option>
74 </term>
75
76 <listitem>
77 <para>
78 The '!' is similar to the 'not' in python. So this line will fail if the command succeeds
79 and succeeds if the command fails. Between the machine name and the '!' must be a space.
80 </para>
81 </listitem>
82 </varlistentry>
83
84 <varlistentry>
85 <term>
86 <option>all: command</option>
87 </term>
88
89 <listitem>
90 <para>
91 This command is executed on all machines of this test.
92 </para>
93 </listitem>
94 </varlistentry>
95 <varlistentry>
96 <term>
97 <option>machine1,machine2: command</option>
98 </term>
99
100 <listitem>
101 <para>
102 This command is on all machines of the comma seperated list.
103 </para>
104 </listitem>
105 </varlistentry>
106
107 <varlistentry>
108 <term>
109 <option>include: ../test2</option>
110 </term>
111
112 <listitem>
113 <para>
114 This will include the recipe of test2.
115 The path is relative to the directory of the
116 recipe file which contains the include statement.
117 </para>
118 </listitem>
119 </varlistentry>
120 </variablelist>
121 </refsect1>
122
123 <refsect1>
124 <title>Example</title>
125
126 <example>
127
128 <simplelist>
129 <member>alice: echo "Hello World"</member>
130 <member>bob !: eecho "Hello World"</member>
131 <member>alice: ls -l</member>
132 <member>all: blkid</member>
133 <member>alice,bob: echo "This is a comma seperated list"</member>
134 <member>include: ../test2</member>
135 </simplelist>
136 </example>
137 </refsect1>
138
139 <refsect1>
140 <title>Bugs</title>
141
142 <para>
143 Please report all bugs to the official bugtracker at
144 http://bugzilla.ipfire.org/.
145 </para>
146 </refsect1>
147
148 <refsect1>
149 <title>See Also</title>
150
151 <para>
152 <citerefentry>
153 <refentrytitle>nitsi</refentrytitle>
154 <manvolnum>1</manvolnum>
155 </citerefentry>
156 </para>
157 </refsect1>
158 </refentry>