Ludovic Courtès <l...@gnu.org> writes: >> The channel updaters are running on the berlin server, and the channel >> packages are built by the build farm guix.bordeaux.inria.fr. > > Is there a document summarizing the setup: the repos involved, the > services/periodic jobs running, etc.?
There is no such document. Here's how it's set up: ci.guix.gnu.org is installed and configured from the hydra/berlin.scm code in the maintenance.git repository[1]. "hydra/modules/sysadmin/packages.scm" defines "guix-cran-scripts", which is built from the contents of its dedicated repository[2]. This package is used in "hydra/modules/sysadmin/services.scm" to define two service types: "guix-cran-service-type" and "guix-bioc-service-type". These extend the mcron service type to run the "update.sh" script. The script acts on /var/lib/guix-cran and /var/lib/guix-bioc, the respective home directories of the guix-cran and guix-bioc user accounts. The result of running the update script for CRAN and Bioconductor is a new commit for each of the repositories at [3] and [4]. The script commits and pushes to these repositories. This means that those user accounts have been granted push access via SSH keys. These keys obviously must stay secret. -- Ricardo [1]: https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/ [2]: https://github.com/guix-science/guix-cran-scripts.git [3]: https://github.com/guix-science/guix-cran [4]: https://github.com/guix-science/guix-bioc