Mercurial > bitten > bitten-test
annotate doc/configure.txt @ 600:01bd114719c5
0.6dev: Follow-up to [672] - forgot mime-type for new file.
author | osimons |
---|---|
date | Thu, 30 Jul 2009 09:52:35 +0000 |
parents | b76e6accad72 |
children | 4dc38daaeca0 |
rev | line source |
---|---|
599
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
1 .. -*- mode: rst; encoding: utf-8 -*- |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
2 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
3 ============= |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
4 Configuration |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
5 ============= |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
6 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
7 While the `Recipe`_ contains the instructions for how to build, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
8 configurations are used to determine what gets built and any runtime |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
9 parameters used when building. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
10 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
11 .. _recipe: recipe.html |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
12 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
13 .. contents:: Contents |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
14 :depth: 2 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
15 .. sectnum:: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
16 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
17 Target platforms |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
18 ================ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
19 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
20 A target platform is something like 'NetBSD x86' or 'Win32 Java 1.4'. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
21 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
22 Technically, a target platform is a named set of rules against which the |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
23 properties of build slaves are matched. Each rule is a regular expression |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
24 matching a particular slave property, such as the operating system |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
25 or the processor. When a slave connects to the build master, it sends a |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
26 registration message that includes information about the slave. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
27 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
28 A build configuration must have at least one target platform assigned to |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
29 it before it becomes fully active. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
30 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
31 Slave Properties |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
32 ================ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
33 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
34 By default, the following properties are included: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
35 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
36 :`family`: The basic type of operating system, typically “posix” for |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
37 Unix-like systems and “nt” for Win32 systems. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
38 :`os`: The name of the operating system (for example “Darwin”, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
39 “Linux” or “Windows”). |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
40 :`version`: The operating system version. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
41 :`machine`: The hardware platform (for example “i686” or “Power Macintosh”). |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
42 :`processor`: The processor architecture (for example “athlon” or “powerpc”). |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
43 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
44 Note that not all of these properties may be available for all platforms, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
45 depending on OS and Python version. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
46 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
47 Examples |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
48 -------- |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
49 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
50 To set up a target platform, create rules that are checked against the |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
51 properties of the slave. For example, a target platform that matches slave |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
52 running Linux on x86 would look like this: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
53 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
54 +------------+------------------------------------+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
55 + Property | Expression | |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
56 +============+====================================+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
57 | `os` | `^Linux` | |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
58 +------------+------------------------------------+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
59 | `machine` | `^[xi]\d?86$` | |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
60 +------------+------------------------------------+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
61 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
62 A target platform that matches any slaves running on Windows might look |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
63 like this: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
64 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
65 +------------+------------------------------------+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
66 + Property | Expression | |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
67 +============+====================================+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
68 | `family` | `^nt$` | |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
69 +------------+------------------------------------+ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
70 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
71 The build master will request a build from at most one slave for every |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
72 target platform. So, for example, if there are three slaves connected that |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
73 are matching 'NetBSD x86', only one of them will perform the build of a |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
74 specific revision. Slaves that match a particular target platform are |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
75 treated as if they were completely interchangable. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
76 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
77 If a slave connects that doesn't match any of the configured target platforms, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
78 the build master will reject its registration. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
79 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
80 Slave Configuration |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
81 =================== |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
82 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
83 When a build slave registers with a build master, it sends information about |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
84 the machine the slave is running on, and what software it has available. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
85 While some of this information can be automatically discovered by the slave, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
86 other information may need to be configured explicitly. Also, a slave instance |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
87 may want to override some of the automatically computed attributes, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
88 for example to enable cross-compilation. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
89 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
90 There are three categories of information that can be configured for a slave: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
91 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
92 :`os`: Properties of the operating system |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
93 :`machine`: Properties of the underlying hardware |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
94 :`packages`: Various pieces of software, like a language runtime or a library |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
95 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
96 Configuration File Format |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
97 ------------------------- |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
98 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
99 For simple manual editing, the slave configuration file will be based on |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
100 the ``'INI'`` file format known from Windows, which is also frequently used by |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
101 Python applications. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
102 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
103 The file is included at runtime using a slave command-line option:: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
104 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
105 bitten-slave -f config.ini |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
106 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
107 A configuration file is partitioned into named sections. There are two |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
108 predefined sections named ``[machine]`` and ``[os]``. If you supply them in |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
109 your configuration file they should include the following sections. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
110 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
111 .. code-block:: ini |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
112 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
113 [os] |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
114 name = Darwin |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
115 version = 8.1.0 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
116 family = posix |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
117 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
118 [machine] |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
119 name = levi |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
120 processor = Power Macintosh |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
121 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
122 There may be any number of additional sections, where each section corresponds |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
123 to a software package. For example: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
124 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
125 .. code-block:: ini |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
126 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
127 [dbxml] |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
128 version = 2.1.8 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
129 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
130 [python] |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
131 version = 2.3.5 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
132 path = /usr/bin/python2.3 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
133 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
134 The build slave sends this package information as part of the build initiation, |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
135 which when using verbose logging (``bitten-slave -v``) will display a debug |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
136 message 'Sending slave configuration:' followed by: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
137 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
138 .. code-block:: xml |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
139 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
140 <slave name="host.domain"> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
141 <platform processor="Power Macintosh">levi</platform> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
142 <os version="8.1.0" family="posix">Darwin</os> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
143 <package name="dbxml" version="2.1.8" /> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
144 <package name="python" version="2.3.5" path="/usr/bin/python23" /> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
145 </slave> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
146 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
147 The name of the slave can only be set as command-line option:: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
148 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
149 bitten-slave --name=myhost |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
150 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
151 Commands using Properties |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
152 ------------------------- |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
153 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
154 A number of commands_ support runtime settings using a slave configuration |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
155 file. The example of ``python.path`` above is one such example, where all |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
156 Python commands will use the specified executable for running commands. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
157 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
158 The documentation for commands_ should include information about all |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
159 runtime settings. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
160 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
161 .. _commands: commands.html |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
162 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
163 Properties in Build Configurations |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
164 ---------------------------------- |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
165 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
166 Defined properties can be used in a build configuration to match slaves |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
167 against target platforms. For example, the following rule would match any slave |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
168 providing 'Berkeley DB XML' version 2.x:: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
169 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
170 dbxml.version ~= /^2\.\d\.\d.*/ |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
171 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
172 The properties are accessible in dotted notation, where the part before the dot |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
173 is the package name, and the part after the dot is the name of the property. |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
174 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
175 Property Interpolation in Build Recipes |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
176 --------------------------------------- |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
177 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
178 Property values can be interpolated into build recipes_ as well, so individual |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
179 slaves can parameterize how their build is perfomed. For example, given the |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
180 following build recipe excerpt: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
181 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
182 .. code-block:: xml |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
183 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
184 <svn:checkout url="http://svn.example.org/repos/myproject/" |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
185 path="${repository.branch}" revision="${revision}"/> |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
186 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
187 .. _recipes: recipes.html |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
188 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
189 Slaves may control which part of the repository is checked out and tested |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
190 with a configuration file excerpt like this one: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
191 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
192 .. code-block:: ini |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
193 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
194 [repository] |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
195 branch = /branches/0.3-testing |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
196 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
197 Authentication |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
198 ============== |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
199 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
200 Authentication information can also be included in slave configuration file: |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
201 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
202 .. code-block:: ini |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
203 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
204 [authentication] |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
205 username = myusername |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
206 password = mypassword |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
207 |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
208 The authentication information will be removed as soon as it is read |
b76e6accad72
0.6dev: Added Configuration documentation. It contains all configuration information I've found in the wiki and source code.
osimons
parents:
diff
changeset
|
209 by the slave, and will not be passed to the master as active configuration. |