]> git.ipfire.org Git - nitsi.git/blame - man/nitsi.recipe.xml
.gitignore: Don't list generated man pages as untracked files
[nitsi.git] / man / nitsi.recipe.xml
CommitLineData
20b41754
JS
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>
9a27a648 22 <manvolnum>5</manvolnum>
20b41754
JS
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.
bc4deca6 36 It consists of lines which state what commands should be executed on which machine.
20b41754
JS
37 </para>
38 </refsect1>
39
40 <refsect1>
41 <title>Basic Syntax</title>
42
43 <para>
bc4deca6 44 All lines follow the following syntax:
20b41754
JS
45 </para>
46
47 <variablelist>
48 <varlistentry>
49 <term>
50 <option>machine: command</option>
51 </term>
52
53 <listitem>
54 <para>
bc4deca6 55 The machine name is the first part of the line followed by ':'.
20b41754
JS
56 After the ':' follows the command which should be executed.
57 </para>
20b41754
JS
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>
bc4deca6
MT
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.
20b41754 80 </para>
20b41754
JS
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>
20b41754
JS
93 </listitem>
94 </varlistentry>
95 <varlistentry>
96 <term>
97 <option>machine1,machine2: command</option>
98 </term>
99
100 <listitem>
101 <para>
bc4deca6 102 This command is on all machines of the comma seperated list.
20b41754 103 </para>
20b41754
JS
104 </listitem>
105 </varlistentry>
106
bc4deca6 107 <varlistentry>
20b41754
JS
108 <term>
109 <option>include: ../test2</option>
110 </term>
111
112 <listitem>
113 <para>
114 This will include the recipe of test2.
bc4deca6
MT
115 The path is relative to the directory of the
116 recipe file which contains the include statement.
20b41754 117 </para>
20b41754
JS
118 </listitem>
119 </varlistentry>
20b41754
JS
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>
20b41754
JS
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>