~loggerhead-team/loggerhead/trunk-rich

« back to all changes in this revision

Viewing changes to README.txt

  • Committer: Michael Hudson
  • Date: 2008-02-28 04:30:10 UTC
  • mto: This revision was merged to the branch mainline in revision 147.
  • Revision ID: michael.hudson@canonical.com-20080228043010-mcz13so8nudi0i9n
release preparations

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
LOGGERHEAD
2
2
==========
3
3
 
4
 
[ Version 1.6 for Bazaar 1.6 ]
 
4
[ version 1.2 for bazaar 1.2 ]
5
5
 
6
 
Loggerhead is a web viewer for Bazaar branches.  It can be used to
 
6
Loggerhead is a web viewer for bazaar branches.  It can be used to
7
7
navigate a branch history, annotate files, perform searches... all the
8
8
usual things.
9
9
 
10
 
 
11
 
GETTING STARTED
12
 
---------------
13
 
 
14
 
Loggerhead depends on 
15
 
1) SimpleTAL for templating.
16
 
   on Ubuntu package `sudo apt-get install python-simpletal`
17
 
   or download from http://www.owlfish.com/software/simpleTAL/download.html
18
 
2) Paste for the server. (You need version 1.2 or newer of Paste.) 
19
 
   on Ubuntu package `sudo apt-get install python-paste`
20
 
   or use `easy_install Paste`
21
 
3) Paste Deploy  (optional, needed when proxying through Apache)
22
 
   on Ubuntu package `sudo apt-get install python-pastedeploy`
23
 
   or use `easy_install PasteDeploy`
24
 
 
25
 
Then simply run the 'serve-branches' with the branch you want to
26
 
serve on the command line:
27
 
 
28
 
    ./serve-branches ~/path/to/branch
29
 
 
30
 
The script listens on port 8080 so head to http://localhost:8080/ in
31
 
your browser to see the branch.  You can also pass a directory that
32
 
contains branches to the script, and it will serve a very simple
33
 
directory listing at other pages.
34
 
 
35
 
You may update the Bazaar branches being viewed at any time.
36
 
Loggerhead will notice and refresh, and Bazaar uses its own branch
37
 
locking to prevent corruption.
38
 
 
39
 
To run loggerhead as a linux daemon: 
40
 
1) Copy loggerheadd to /etc/init.d
41
 
2) Edit the file to configure where your loggerhead is installed, and which
42
 
   serve-branches options you would like.
43
 
3) Register the service
44
 
   cd /etc/init.d
45
 
   a) on upstart based systems like Ubuntu run: 
46
 
      update-rc.d loggerheadd defaults
47
 
   b) on Sysvinit based systems like Centos or SuSE run:
48
 
      chkconfig --add loggerheadd
49
 
 
50
 
USING A CONFIG FILE
51
 
-------------------
52
 
 
53
 
Previous versions of Loggerhead read their configuration from a config
54
 
file.  This mode of operation is still supported by the
55
 
'start-loggerhead' script.  A 'loggerhead.conf.example' file is
56
 
included in the source which has comments explaining the various
57
 
options.
58
 
 
59
 
Loggerhead can then be started by running::
60
 
 
61
 
    $ ./start-loggerhead
62
 
 
63
 
This will run loggerhead in the background, listening on port 8080 by
64
 
default.
65
 
 
66
 
To stop Loggerhead, run::
67
 
 
68
 
    $ ./stop-loggerhead
69
 
 
70
 
In the configuration file you can configure projects, and branches per
71
 
project.  The idea is that you could be publishing several (possibly
72
 
unrelated) projects through the same loggerhead instance, and several
73
 
branches for the same project.  See the "loggerhead.conf.example" file
74
 
included with the source.
75
 
 
76
 
A debug and access log are stored in the logs/ folder, relative to
77
 
the location of the start-loggerhead script.
78
 
 
79
 
 
80
 
SERVING LOGGERHEAD FROM BEHIND APACHE
81
 
-------------------------------------
82
 
 
83
 
If you want to view Bazaar branches from your existing Apache
84
 
installation, you'll need to configure Apache to proxy certain
85
 
requests to Loggerhead.  Adding lines like this to you Apache
86
 
configuration is one way to do this::
 
10
This is a TurboGears (http://www.turbogears.org) project.  It can be
 
11
started by running::
 
12
 
 
13
    $ ./start-loggerhead.py
 
14
 
 
15
This will run loggerhead in the background.  To stop it, run::
 
16
 
 
17
    $ ./stop-loggerhead.py
 
18
 
 
19
If you're not familiar with TurboGears, the simplest way to get running
 
20
is to add the lines like the following to your apache configuration::
87
21
 
88
22
    <Location "/branches/">
89
23
        ProxyPass http://127.0.0.1:8080/
90
24
        ProxyPassReverse http://127.0.0.1:8080/
91
25
    </Location>
92
26
 
93
 
If Paste Deploy is installed, the 'serve-branches' script can be
94
 
run behind a proxy at the root of a site, but if you're running it at
95
 
some path into the site, you'll need to specify is using '--prefix=/some_path'.
96
 
 
97
 
FILES CHANGED CACHE
98
 
-------------------
99
 
 
100
 
To speed up the display of the changelog view for large trees,
101
 
loggerhead can be configured to cache the files changes between
102
 
revisions.  Set the 'cachepath' value in the config file.
 
27
The config file is "loggerhead.conf".  In there, you can configure
 
28
projects, and branches per project.  The idea is that you could be
 
29
publishing several (possibly unrelated) projects through the same
 
30
loggerhead instance, and several branches for the same project.  A
 
31
commented example of a configuration file is loggerhead.conf.example
 
32
included with the source.
 
33
 
 
34
Don't bother with "dev.cfg" or any of the other TurboGears config files.
 
35
Loggerhead overrides those values with its own.
 
36
 
 
37
A debug and access log are stored in the logs/ folder.
 
38
 
 
39
 
 
40
CACHES
 
41
------
 
42
 
 
43
To speed up operations with large branches, loggerhead can be configured
 
44
to create three caches per branch when it first launches:
 
45
 
 
46
    - a revision data cache
 
47
    - a cache of files changed in a revision
 
48
    - a text searching cache
 
49
 
 
50
You can put the cache folder anywhere, but I find that a folder under
 
51
the branch's .bzr/ folder is the simplest place.
 
52
 
 
53
The revision data cache and text searching cache will be automatically
 
54
filled once loggerhead starts up.  The caches for a branch with 15,000
 
55
revisions take about four minutes each on a fairly fast machine, but
 
56
mileage may vary.  Once they are built, they update every six hours or
 
57
so but usually finish quickly (or instantly) after the initial creation.
 
58
 
 
59
You may update the bazaar branch at any time (for example, from a cron).
 
60
Loggerhead will notice and refresh, and bazaar uses its own branch
 
61
locking to prevent corruption.
103
62
 
104
63
 
105
64
SUPPORT
106
65
-------
107
66
 
108
 
Loggerhead is loosely based on bazaar-webserve, which was loosely
109
 
based on hgweb.  Discussion should take place on the bazaar-dev
110
 
mailing list at bazaar@lists.canonical.com.  You can join the list at
111
 
<https://lists.ubuntu.com/mailman/listinfo/bazaar>.  You don't need to
112
 
subscribe to post, but your first post will be held briefly for manual
113
 
moderation.
114
 
 
115
 
Bugs are tracked on Launchpad; start at:
116
 
 
117
 
    https://bugs.launchpad.net/loggerhead
 
67
This is loosely based on bazaar-webserve, which was loosely based on hgweb.
 
68
Discussion should take place on the bazaar-dev mailing list.