Mercurial > sci
annotate doc/mainpage.c @ 56:308aa1086702
lib: cleanup apic
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 17 Aug 2022 12:51:04 +0200 |
parents | 1d0ddf9e6efd |
children |
rev | line source |
---|---|
33
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /** |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * \mainpage |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * \brief Welcome to sci documentation |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * This is sci, the simple continuous integration framework. |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * The documentation available here targets users who want to hack on sci code, |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * for user general documentation please read the appropriate manual pages. |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * ## General overview |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * The framework is split between three applications: |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * - `scid`: the main daemon providing database access through HTTP (using |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * CGI/FastCGI). |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * - `scictl`: main user utility to manipulate the sci framework using the |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 * command line. |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 * - `sciworkerd`: daemon that fetches jobs, run them and send the result. |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 * ## Data models |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 * Every data model is converted back-and-forth using JSON all over the |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 * application to avoid converting over and over into native types. Also, |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 * because the framework uses [mustache][] and Javascript based themes it's |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 * easier to share the data model using this format. |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 * ### project |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 * - `name` (string): unique project identifir |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 * - `desc` (string): project description |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 * - `url` (string): project homepage or repository URL |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 * - `script` (string): code to execute |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 * - `date` (int): created timestamp |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 * ### worker |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 * - `name` (string): unique worker identifier |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 * - `desc` (string): worker description |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 * ### job |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 * - `id` (int): unique job id |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 * - `tag` (string): job tag (e.g. repository revision) |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 * - `project_name` (string): project name referenced |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 * - `date` (int): created timestamp |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 * ### jobresult |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 * - `id` (int): unique jobresult id |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 * - `job_id` (int): job id referenced |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 * - `worker_name` (string): worker name referenced |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 * - `console` (string): script console output |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 * - `exitcode` (int): script exit code (only if sigcode == 0) |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 * - `sigcode` (int): termination signal if interrupted (exitcode will be 0) |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 * - `date` (int): created timestamp (not the worker job timestamp) |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 * |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 * [mustache]: https://mustache.github.io/ |
1d0ddf9e6efd
misc: general documentation
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 */ |