2016-09-26 10:34:48 +02:00
|
|
|
Cuirass is a continuous integration tool using GNU Guix. It is intended as a
|
|
|
|
replacement for Hydra.
|
2016-05-11 19:59:47 +02:00
|
|
|
|
|
|
|
Requirements
|
|
|
|
============
|
|
|
|
|
2016-08-03 02:45:56 +02:00
|
|
|
Cuirass currently depends on the following packages:
|
2016-05-11 19:59:47 +02:00
|
|
|
|
2020-01-18 15:18:00 +01:00
|
|
|
- GNU Guile 3.0.x or 2.2.x
|
2016-08-03 02:45:56 +02:00
|
|
|
- GNU Guix (and all its development dependencies)
|
|
|
|
- GNU Make
|
2019-08-17 18:48:34 +02:00
|
|
|
- Guile-JSON 3.x
|
2016-08-03 02:45:56 +02:00
|
|
|
- Guile-SQLite3
|
2017-08-26 13:57:53 +02:00
|
|
|
- Guile-Git
|
2018-01-22 23:07:10 +01:00
|
|
|
- Fibers
|
2016-06-16 01:11:57 +02:00
|
|
|
|
2016-08-03 02:45:56 +02:00
|
|
|
A convenient way to install those dependencies is to install Guix and execute
|
|
|
|
the following command:
|
|
|
|
|
2016-12-25 14:29:13 +01:00
|
|
|
$ guix environment -l build-aux/guix.scm
|
2016-08-03 02:45:56 +02:00
|
|
|
|
|
|
|
This will build and enter an environment which provides all the necessary
|
|
|
|
dependencies.
|
2016-07-02 23:00:17 +02:00
|
|
|
|
2016-12-25 14:29:13 +01:00
|
|
|
Build Instructions
|
|
|
|
==================
|
|
|
|
|
|
|
|
When all the dependencies are available on you system, in order to build and
|
|
|
|
install Cuirass, you can proceed with the usual:
|
|
|
|
|
|
|
|
$ ./configure && sudo make install
|
|
|
|
|
|
|
|
An alternative way is to directly install Cuirass in your Guix profile, using:
|
|
|
|
|
|
|
|
$ guix package -f build-aux/guix.scm
|
|
|
|
|
|
|
|
To build it, but not install it, run:
|
|
|
|
|
|
|
|
$ guix build -f build-aux/guix.scm
|
|
|
|
|
2016-07-02 23:00:17 +02:00
|
|
|
Example
|
|
|
|
=======
|
|
|
|
|
|
|
|
A quick way to manually test Cuirass is to execute:
|
|
|
|
|
2016-12-16 13:20:49 +01:00
|
|
|
./pre-inst-env cuirass --specifications=examples/hello-singleton.scm --database=test.db
|
2016-07-26 11:58:28 +02:00
|
|
|
|
2016-12-16 13:20:49 +01:00
|
|
|
This will read the file "examples/hello-singleton.scm" which contains a list of
|
2016-07-26 11:58:28 +02:00
|
|
|
specifications and add them to the database "test.db" which is created if it
|
|
|
|
doesn't already exist.
|
|
|
|
|
2016-09-26 10:34:48 +02:00
|
|
|
'cuirass' then loops evaluating/building the specs. The database keeps track
|
|
|
|
of the specifications in order to allow users to accumulate specifications.
|
|
|
|
To resume the evaluation/build process you can execute the same command
|
|
|
|
without the '--specifications' option:
|
2016-07-26 11:58:28 +02:00
|
|
|
|
|
|
|
./pre-inst-env cuirass --database=test.db
|
2017-01-29 17:55:02 +01:00
|
|
|
|
2019-08-10 13:46:55 +02:00
|
|
|
To start the web interface run:
|
|
|
|
|
|
|
|
./pre-inst-env cuirass --web
|
|
|
|
|
2017-01-29 17:55:02 +01:00
|
|
|
Contributing
|
|
|
|
============
|
|
|
|
|
|
|
|
See the manual for useful hacking informations, by running
|
|
|
|
|
|
|
|
info -f doc/cuirass.info "Contributing"
|