Mercurial > bitten > bitten-test
annotate README.txt @ 515:05cfbe90237e
Added missing `sys` import - fixes #345
author | dfraser |
---|---|
date | Wed, 11 Mar 2009 12:52:44 +0000 |
parents | e3ab7698dae7 |
children | 7f181708d048 |
rev | line source |
---|---|
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
1 About Bitten |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
2 ============ |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
3 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
4 Bitten is a simple distributed continuous integration system that not only |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
5 coordinates builds across multiple machines, but also collects software |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
6 metrics generated by builds, to enable feedback and reporting about |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
7 the progress of a software project. |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
8 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
9 The Bitten software consists of three separate parts: |
319 | 10 * The build slave, which executes builds on behalf of a local or remote |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
11 build master |
319 | 12 * The build master, which orchestrates builds for a project across all |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
13 connected slaves, and stores the build status and results to the |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
14 database |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
15 * The web interface, which is implemented as an add-on to Trac |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
16 (http://trac.edgewall.com/) and provides a build management interface |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
17 as well as presentation of build results. |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
18 |
376
05c684ceb8c6
Use `req.href` instead of `env.href` as that works much better in Trac>=0.10. That also means Trac 0.9 is no longer supported.
cmlenz
parents:
330
diff
changeset
|
19 Both the build master and the web interface depend on Trac 0.10, and need |
319 | 20 to be installed on the same machine, together with the Subversion |
21 repository. The build slave only requires Python (>= 2.3), setuptools | |
22 (>= 0.6a2), as well as any tools required by the build process itself. A | |
23 build slave may be run on any machine that can connect to the server | |
24 running the Bitten build master. | |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
25 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
26 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
27 Installation |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
28 ------------ |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
29 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
30 Bitten is written in Python, so make sure that you have Python installed. |
190 | 31 You'll need Python 2.3 or later. Also, make sure that setuptools |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
32 (http://peak.telecommunity.com/DevCenter/setuptools), version 0.6a2 or later, |
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
33 is installed. |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
34 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
35 If that's taken care of, you just need to download and unpack the Bitten |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
36 distribution, and execute the command: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
37 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
38 $ python setup.py install |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
39 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
40 from the top of the directory where you unpacked (or checked out) the Bitten |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
41 code. Note that you may need administrator/root privileges for this step, as |
319 | 42 it will by default attempt to install Bitten to the Python site-packages |
43 directory on your system. | |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
44 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
45 It's also a good idea to run the unit tests at this point, to make sure that |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
46 the code works as expected on your platform: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
47 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
48 $ python setup.py test |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
49 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
50 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
51 What's left to do now depends on whether you want to use the build master and |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
52 web interface, or just the build slave. In the latter case, you're already |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
53 done. You might need to install software that the build of your project |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
54 requires, but the Bitten build slave itself doesn't require anything extra. |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
55 |
376
05c684ceb8c6
Use `req.href` instead of `env.href` as that works much better in Trac>=0.10. That also means Trac 0.9 is no longer supported.
cmlenz
parents:
330
diff
changeset
|
56 For the build master and web interface, you'll need to install Trac 0.10 or |
330
f116a5068e4e
Update README to reflect that Trac 0.9.3 is now required.
cmlenz
parents:
319
diff
changeset
|
57 later. Please refer to the Trac documentation for information on how it is |
f116a5068e4e
Update README to reflect that Trac 0.9.3 is now required.
cmlenz
parents:
319
diff
changeset
|
58 installed. |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
59 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
60 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
61 Build Master Configuration |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
62 -------------------------- |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
63 |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
64 Once both Bitten and Trac are installed and working, you'll have to introduce |
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
65 Bitten to your Trac project environment. If you don't have a Trac project |
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
66 set up yet, you'll need to do so in order to use Bitten. |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
67 |
319 | 68 If you already have a Trac project environment, the Bitten plugin needs to be |
69 explicitly enabled in the Trac configuration. This is done by adding it to the | |
70 [components] section in /path/to/projenv/conf/trac.ini: | |
71 | |
72 [components] | |
73 bitten.* = enabled | |
74 | |
75 The Trac web interface should now inform you with an error message that the | |
76 environment needs to be upgraded. To do this, run: | |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
77 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
78 $ trac-admin /path/to/projenv upgrade |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
79 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
80 This will create the database tables and directories that Bitten requires. |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
81 You probably also want to grant permissions to someone (such as yourself) |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
82 to manage build configurations, and allow anonymous users to view the |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
83 status and results of builds: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
84 |
393 | 85 $ trac-admin /path/to/projenv permission add anonymous BUILD_EXEC |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
86 $ trac-admin /path/to/projenv permission add anonymous BUILD_VIEW |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
87 $ trac-admin /path/to/projenv permission add [yourname] BUILD_ADMIN |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
88 |
319 | 89 You should now see an additional tab labeled "Build Status" in the Trac |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
90 navigation bar. This link will take you to the list of build configurations, |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
91 which at this point is of course empty. If you've set up permissions |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
92 correctly as described previously, you should see a button for adding new |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
93 build configurations. Click that button and fill out the form. Also, add |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
94 at least one target platform after saving the configuration. Last but not |
190 | 95 least, you'll have to "activate" the build configuration. |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
96 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
97 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
98 Running the Build Master |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
99 ------------------------ |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
100 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
101 At this point, you're ready to start the Bitten build master. The |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
102 installation of Bitten should have put a `bitten-master` executable on your |
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
103 path. If the script is not on your path, look for it in the `bin` or |
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
104 `scripts` subdirectory of your Python installation. |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
105 |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
106 To find out about the options and arguments of the master, execute it with |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
107 the `--help` option as follows: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
108 |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
109 $ bitten-master --help |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
110 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
111 Most commonly, you'll want to specify the log level and log file, as well as |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
112 the path to the Trac environment: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
113 |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
114 $ bitten-master --verbose --log=/var/log/bittend /var/trac/myproject |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
115 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
116 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
117 Running the Build Slave |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
118 ----------------------- |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
119 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
120 The build slave can be run on any machine that can connect to the machine |
393 | 121 on which the build master is running. The installation of Bitten should have put |
122 a `bitten-slave` executable on your path. If the script is not on your path, | |
123 look for it in the `bin` or `scripts` subdirectory of your Python installation. | |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
124 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
125 To get a list of options for the build slave, execute it with the `--help` |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
126 option: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
127 |
207
0a7d06e3f0fd
Remove the wrapper scripts (now taken care of by setuptools/easy_install) and update the docs to reflect the name change.
cmlenz
parents:
190
diff
changeset
|
128 $ bitten-slave --help |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
129 |
393 | 130 To run the build slave against a Bitten-enabled Trac site installed at |
131 http://myproject.example.org/trac, you'd run: | |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
132 |
393 | 133 $ bitten-slave http://myproject.example.org/trac/builds |
189
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
134 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
135 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
136 More Information |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
137 ---------------- |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
138 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
139 For further documentation, please see the Bitten website at: |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
140 |
2f0b36b313cc
Added [source:trunk/README.txt README.txt] to explain installation, configuration and usage of Bitten. Closes #36.
cmlenz
parents:
diff
changeset
|
141 <http://bitten.cmlenz.net/> |