412
|
1 .. -*- mode: rst; encoding: utf-8 -*-
|
|
2
|
|
3 ============
|
|
4 Installation
|
|
5 ============
|
|
6
|
|
7 .. contents:: Contents
|
|
8 :depth: 2
|
|
9 .. sectnum::
|
|
10
|
|
11
|
|
12 Prerequisites
|
|
13 =============
|
|
14
|
|
15 Bitten is written in Python, so make sure that you have Python installed.
|
|
16 You'll need Python 2.3 or later. Also, make sure that setuptools_, version 0.6a2
|
|
17 or later, is installed.
|
|
18
|
|
19 .. _setuptools: http://peak.telecommunity.com/DevCenter/setuptools
|
|
20
|
|
21 If that's taken care of, you just need to download and unpack the Bitten
|
|
22 distribution, and execute the command::
|
|
23
|
|
24 $ python setup.py install
|
|
25
|
|
26 from the top of the directory where you unpacked (or checked out) the Bitten
|
|
27 code. Note that you may need administrator/root privileges for this step, as
|
|
28 it will by default attempt to install Bitten to the Python site-packages
|
|
29 directory on your system.
|
|
30
|
|
31 It's also a good idea to run the unit tests at this point, to make sure that
|
|
32 the code works as expected on your platform::
|
|
33
|
|
34 $ python setup.py test
|
|
35
|
|
36
|
|
37 What's left to do now depends on whether you want to use the build master and
|
|
38 web interface, or just the build slave. In the latter case, you're already
|
|
39 done. You might need to install software that the build of your project
|
|
40 requires, but the Bitten build slave itself doesn't require anything extra.
|
|
41
|
|
42 For the build master and web interface, you'll need to install Trac 0.10 or
|
|
43 later. Please refer to the Trac documentation for information on how it is
|
|
44 installed.
|
|
45
|
|
46
|
|
47 Build Master Configuration
|
|
48 ==========================
|
|
49
|
|
50 Once both Bitten and Trac are installed and working, you'll have to introduce
|
|
51 Bitten to your Trac project environment. If you don't have a Trac project
|
|
52 set up yet, you'll need to do so in order to use Bitten.
|
|
53
|
|
54 If you already have a Trac project environment, the Bitten plugin needs to be
|
|
55 explicitly enabled in the Trac configuration. This is done by adding it to the
|
|
56 [components] section in /path/to/projenv/conf/trac.ini:
|
|
57
|
|
58 .. code-block:: ini
|
|
59
|
|
60 [components]
|
|
61 bitten.* = enabled
|
|
62
|
|
63 The Trac web interface should now inform you with an error message that the
|
|
64 environment needs to be upgraded. To do this, run::
|
|
65
|
|
66 $ trac-admin /path/to/projenv upgrade
|
|
67
|
|
68 This will create the database tables and directories that Bitten requires.
|
|
69 You probably also want to grant permissions to someone (such as yourself)
|
|
70 to manage build configurations, and allow anonymous users to view the
|
|
71 status and results of builds::
|
|
72
|
|
73 $ trac-admin /path/to/projenv permission add anonymous BUILD_EXEC
|
|
74 $ trac-admin /path/to/projenv permission add anonymous BUILD_VIEW
|
|
75 $ trac-admin /path/to/projenv permission add [yourname] BUILD_ADMIN
|
|
76
|
|
77 You should now see an additional tab labeled "Build Status" in the Trac
|
|
78 navigation bar. This link will take you to the list of build configurations,
|
|
79 which at this point is of course empty. If you've set up permissions
|
|
80 correctly as described previously, you should see a button for adding new
|
|
81 build configurations. Click that button and fill out the form. Also, add
|
|
82 at least one target platform after saving the configuration. Last but not
|
|
83 least, you'll have to "activate" the build configuration.
|
|
84
|
|
85
|
|
86 Running the Build Slave
|
|
87 =======================
|
|
88
|
|
89 The build slave can be run on any machine that can connect to the machine
|
|
90 on which the build master is running. The installation of Bitten should have put
|
|
91 a `bitten-slave` executable on your path. If the script is not on your path,
|
|
92 look for it in the `bin` or `scripts` subdirectory of your Python installation.
|
|
93
|
|
94 To get a list of options for the build slave, execute it with the `--help`
|
|
95 option::
|
|
96
|
|
97 $ bitten-slave --help
|
|
98
|
|
99 To run the build slave against a Bitten-enabled Trac site installed at
|
|
100 http://myproject.example.org/trac, you'd run::
|
|
101
|
|
102 $ bitten-slave http://myproject.example.org/trac/builds
|