summaryrefslogtreecommitdiff
path: root/contrib/ciabot/INSTALL
blob: 8253865d2261569a64842659c97262eac62339c2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
= Installation instructions =
 
Two scripts are included.  The Python one (ciabot.py) is faster and
more capable; the shell one (ciabot.sh) is a fallback in case Python
gives your git hosting site indigestion. (I know of no such sites.)
 
It is no longer necessary to modify the script in order to put it
in place; in fact, this is now discouraged. It is entirely
configurable with the following git config variables:
 
ciabot.project = name of the project (required)
ciabot.repo = name of the project repo for gitweb/cgit purposes
ciabot.xmlrpc  = if true (default), ship notifications via XML-RPC
ciabot.revformat = format in which the revision is shown
 
The ciabot.repo value defaults to ciabot.project lowercased.
 
The revformat variable may have the following values
raw -> full hex ID of commit
short -> first 12 chars of hex ID
describe -> describe relative to last tag, falling back to short
The default is 'describe'.
 
Once you've set these variables, try your script with -n to see the
notification message dumped to stdout and verify that it looks sane.
 
After verifying correct function, install one of these scripts either
in a post-commit hook or in an update hook.
 
In post-commit, run it without arguments. It will query for
current HEAD and the latest commit ID to get the information it
needs.
 
In update, call it with a refname followed by a list of commits:
You want to reverse the order git rev-list emits because it lists
from most recent to oldest.
 
/path/to/ciabot.py ${refname} $(git rev-list ${oldhead}..${newhead} | tac)