From: Frank Duncan Date: Fri, 13 Aug 2021 20:09:54 +0000 (-0500) Subject: Update documentation for design plan X-Git-Url: https://code.consxy.com/gitweb/gitweb.cgi?p=candle;a=commitdiff_plain;h=360010104ecdfcc5ad3b4eceb162a6b989fe6a27 Update documentation for design plan --- diff --git a/README.md b/README.md index 0a43cf8..31727e9 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,44 @@ as the machines on which the CI's are run. Each project with a candle file has a .candle file in the root of the project with tasks to be run. += Limitations = + +This documentation needs to be updated once more things are working, but this is an +early version of everything. + +This only works in the following: + + * SBCL + * Linux + * Git as source control + * AWS as remote code + +There is also no email, and everything else handled via the CLI. + +Only one can be running at a time. + = Usage = -Run bin/candle +* Run bin/candle-server on a server somewhere, so that the candle client can connect to it +* Add projects via `bin/candle project --add`, see `--help` for more information +* Run `bin/candle project --show ` to show status of project + * Includes what branches are failing +* Run `bin/candle project --list` to show list all projects, and status +* Run `bin/candle job --log :` to see log + += General Design = + +For all projects added, a watcher thread runs `git fetch origin` to see if there's any +new SHAs for which jobs need to be run. + +When a previously unknown SHA shows up in the git directory, a job is created for that +SHA, which then clones the repository into the right place and runs `candle` for that location, +if there's a .candle file. + +A project is failing if any branches are failing, that is to say that the current sha +for that branch is failing. + +== Edge Cases == + +* For SHAs that hang, or get into infinite loops, there's a timeout before the server is killed + and marked as failure.