aboutsummaryrefslogtreecommitdiff
path: root/README.adoc
blob: 80d708f8baab083a4bcd5d1c654ac7490e60d353 (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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
acid
====

'acid' is A Continuous Integration Daemon.  Currently under heavy development.
Right now I'm working on a demo JSON-RPC server that will serve as the basis for
the final daemon.

The aim of this project is to provide a dumbed-down alternative to Travis CI.
I find it way too complex to set up and run in a local setting, while the basic
gist of it is actually very simple -- run some stuff on new git commits.

'acid' will provide a JSON-RPC 2.0 service for frontends over FastCGI, SCGI, or
WebSockets, as well as a webhook endpoint for notifications about new commits.
The daemon is supposed to be "firewalled" by a normal HTTP server and it will
not provide TLS support to secure the communications.

'acid' will be able to tell you about build results via e-mail and/or IRC.

Builds will only be supported on the same machine as the daemon.  Eventually I
might be able to add support for fully replicable builds using Docker.

With this being my own project, of course it is written in event-looped C99
where everything is stuffed into just a few files.  At least I hope it's written
in a somewhat clean manner.  Feel free to contribute.

Building and Installing
-----------------------
Build dependencies: CMake, pkg-config, help2man, libmagic,
                    liberty (included), http-parser (included) +
Runtime dependencies: libev, Jansson

 $ git clone --recursive https://git.janouch.name/p/acid.git
 $ mkdir acid/build
 $ cd acid/build
 $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug
 $ make

To install the application, you can do either the usual:

 # make install

Or you can try telling CMake to make a package for you.  For Debian it is:

 $ cpack -G DEB
 # dpkg -i acid-*.deb

Note that for versions of CMake before 2.8.9, you need to prefix `cpack` with
`fakeroot` or file ownership will end up wrong.

Usage
-----
TODO.  The main application hasn't been written yet.

Contributing and Support
------------------------
Use https://git.janouch.name/p/acid to report any bugs, request features,
or submit pull requests.  `git send-email` is tolerated.  If you want to discuss
the project, feel free to join me at ircs://irc.janouch.name, channel #dev.

Bitcoin donations are accepted at: 12r5uEWEgcHC46xd64tt3hHt9EUvYYDHe9

License
-------
This software is released under the terms of the 0BSD license, the text of which
is included within the package along with the list of authors.