Polish documentation.
[irker.git] / install.txt
1 = Forge installation instructions =
2
3 irker and irkerhook.py are intended to be installed on forge sites
4 such as SourceForge, GitHub, Gitorious, Gna, and Savannah.  This
5 file explains the theory of operation, how to install the code,
6 and how to test it.
7
8 == Installing irker ==
9
10 irker needs to run constantly, watching for TCP and UDP traffic on
11 port 6659.  Install it accordingly.
12
13 You should *not* make irker visible from outside the site firewall, as
14 it can be used to spam IRC channels while masking the source address.
15
16 == Installing irkerhook.py ==
17
18 irkerhook.py should be called from the post-commit hook of each 
19 repository.  See its header comment for detailed installation 
20 instructions.
21
22 You should set the server and (for Subversion) repository variables
23 from the command line in your post-commit hook.  The server variable
24 should be set to the inside-the-firewall host running your irker
25 instance.
26
27 A git invocation line should look something like this:
28
29 /usr/local/bin/irkerhook.py server=internal.foobar.net
30
31 Each project will be able to set its own channel URLs, provided it
32 has access to its git config file.
33
34 A Subversion invocation should look something like this:
35
36 REPOSITORY=$1
37 REV=$2
38 irkerhook.py repository=$REPOSITORY commit=$REV server=internal.foobar.net
39
40 Note that unless you supply additional overrides of project= and
41 channels= in the hook, the basename of the repository will be used as
42 the project name and will also be used as the IRC channel name on
43 freenode.  This is not a limitation of irker.irkerhook, but a
44 result of the absence of a git-config equivalent that the hook can
45 mine stuff out of.
46
47 == Testing ==
48
49 Go to a project repo and call irkerhook.py as indicated above while
50 watching the freenode #commits channel.
51