comparison README @ 42:bad59cd04f34

add README
author Bernhard Herzog <bh@intevation.de>
date Mon, 19 Mar 2007 17:19:59 +0100
parents
children 225206553bba
comparison
equal deleted inserted replaced
41:f7ec40638a06 42:bad59cd04f34
1 README for TreePackager
2 =======================
3 2007-03-19, Bernhard Herzog <bh@intevation.de>
4
5
6 TreePackager is a tool to automatically build debian packages from SVN.
7
8
9 Prerequisites
10 -------------
11
12 You need the following software to run TreePackager. In the list below,
13 parentheses contain the name of the corresponding package in Debian Etch
14 if its not the same as the software. The version required is usually
15 the one from debian etch.
16
17 Python 2.4 (python2.4-minimal)
18 Debian devscripts (devscripts)
19 subversion
20 pbuilder
21 sudo
22 bzip2
23
24 For the web front-end you also need the following software:
25
26 Genshi (python-genshi)
27 CherryPy (python-cherrypy)
28
29 Some of the packagers require additional software. The KDEPIM
30 enterprise branch packagers require the following additional software:
31
32 autoconf2.13
33 automake1.9
34
35
36 Installation
37 ------------
38
39 You can run the tree packager itself directly from the source tree.
40 However, you need to configure it first and setup pbuilder.
41
42
43 Configuration
44 -------------
45
46 To understand the configuration, first a few notes about the
47 architecture of TreePackager. The TreePackager consist of one program
48 that periodically updates svn working directories and if something has
49 changed, builds a new debian package from the working directory. The
50 program should run as a normal user. The sample configuration assumes
51 that it's the user "builder" with a home directory "/home/builder". The
52 default configuration manages a directory tree under
53 "/home/builder/enterprise".
54
55 The binary packages are built with pbuilder. Because pbuilder uses a
56 chroot environment to build the packages, it must be run as root. The
57 tree packager therefore needs a way to run pbuilder as root even though
58 itself runs as a non-root user. By default the tree packager uses sudo,
59 so you have to setup sudo to allow the tree packager user to invoke
60 pbuilder without a password. This can be accomplished with the
61 following line in /etc/sudoers (using the default user name):
62
63 builder ALL = NOPASSWD: /usr/sbin/pbuilder
64
65
66 Configure TreePackager
67 ~~~~~~~~~~~~~~~~~~~~~~
68
69 The file demo.cfg contains example configuration that contains most of
70 what is needed to package KDEPIM and kde-i18n from the KDEPIM enterprise
71 branch. Copy this file to treepkg.cfg and adapt it to your needs. The
72 comments in the file should provide enough hints to get you started.
73
74
75 Configure pbuilder
76 ~~~~~~~~~~~~~~~~~~
77
78 Currently the tree packager assumes that pbuilder has already been set up
79 and that the default configuration is suitable for the purposes the tree
80 packager instance. Normally, the default way of setting up sudo should
81 be OK. There is one important interaction with sudo that you need to be
82 aware of, though: when the user builder starts pbuilder via sudo,
83 pbuilder uses ~builder/.pbuilderrc as its standard configuration file.
84
85
86 Configure the web front-end
87 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
88
89 The default configuration should be OK in most cases. If you want you
90 can customize it in cherrypy.cfg. Start the web front-end with
91
92 ./starttreepkgweb.py
93
94 starttreepkgweb has some options to specify which configuration files to use.
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)