annotate doc/mainpage.c @ 71:ef8f9c986080

scid: fix worker with . in their names
author David Demelier <markand@malikania.fr>
date Tue, 24 Jan 2023 10:04:47 +0100
parents 1d0ddf9e6efd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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 */