3 Continuous Integration for SBCL based Lisp projects, using AWS instances
4 as the machines on which the CI's are run.
8 Each project with a candle file has a .candle file in the root of the project
13 This documentation needs to be updated once more things are working, but this is an
14 early version of everything.
16 This only works in the following:
20 * Git as source control
23 There is also no email, and everything else handled via the CLI.
25 Only one can be running at a time.
29 * Run bin/candle-server on a server somewhere, so that the candle client can connect to it
30 * Add projects via `bin/candle project --add`, see `--help` for more information
31 * Run `bin/candle project --show <name>` to show status of project
32 * Includes what branches are failing
33 * Run `bin/candle project --list` to show list all projects, and status
34 * Run `bin/candle job --log <project>:<sha>` to see log
38 * Run `bin/candle run` from a candle enabled project
42 For all projects added, a watcher thread runs `git fetch origin` to see if there's any
43 new SHAs for which jobs need to be run.
45 When a previously unknown SHA shows up in the git directory, a job is created for that
46 SHA, which then clones the repository into the right place and runs `candle` for that location,
47 if there's a .candle file.
49 A project is failing if any branches are failing, that is to say that the current sha
50 for that branch is failing.
54 * For SHAs that hang, or get into infinite loops, there's a timeout before the server is killed
55 and marked as failure.