maintenance/doc/cuirass-howto.org

2.2 KiB
Raw Blame History

Tips and tricks on Cuirass administration

This file documents tips and tricks on how to configure the Cuirass continuous integration tool while its running, for instance on berlin.guix.gnu.org.

Most live configuration changes involve:

  1. logging in on berlin.guix.gnu.org;
  2. editing /var/lib/cuirass/cuirass.db as root.

User friendliness!

Adding a new branch to build

This is how youd insert a wip-texlive job to build the wip-texlive branch.

  $ sudo sqlite3 /var/lib/cuirass/cuirass.db
  sqlite> insert into specifications values('wip-texlive', '()', '()', 'wip-texlive','build-aux/cuirass/gnu-system.scm', 'cuirass-jobs', '((systems "x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux"))');
  sqlite> insert into inputs values('wip-texlive', 'wip-texlive', 'https://git.savannah.gnu.org/git/guix.git', '.', 'wip-texlive', NULL, NULL, 1);

Note that there are 3 things named wip-texlive here: the spec, the input, and the branch.

Deleting a job

Heres how youd delete the wip-texlive job:

  sqlite> delete from inputs where name = 'wip-texlive';
  sqlite> delete from specifications where name = 'wip-texlive';

Changing the core-updates spec to build just the “core” subset

  $ sudo sqlite3 /var/lib/cuirass/cuirass.db
  SQLite version 3.26.0 2018-12-01 12:34:55
  Enter ".help" for usage hints.
  sqlite> update specifications set proc_args='((subset . "core")(systems "x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux"))' where name='core-updates-core-updates';

Canceling pending builds

Support evaluation 7777 has queued lots of builds that youd rather not performed, heres how youd cancel them:

  $ sudo sqlite3 /var/lib/cuirass/cuirass.db
  SQLite version 3.26.0 2018-12-01 12:34:55
  Enter ".help" for usage hints.
  sqlite> update builds set status=4 where evaluation=7777;
  sqlite>

The value 4 for status comes from the build-status enum in the (cuirass database) module.

Retrying an evaluation

Support evaluation 8009 failed due to some transient error and you want to retry it:

  sqlite> delete from checkouts where evaluation=8009;