Hi,
I wonder whether it's possible to maintain a channel using gitlab-ci. Any thought or experiences to share?
My idea is to schedule jobs which are refreshing the packages,
building/testing them and to provide substitutes.
The channel is meant for Tryton (tryton.org), which consists of
about 200 plug-in packages and bug-fixes are published for the LTS
version every now and then. The channel should follow these
bug-fix releases. Tryton is pure Python, anyhow some dependencies
require C, C++ and even rust for building, updating dependencies
should be avoided if not all substitutes for all dependencies are
available (or maybe deny-list specific dependencies).
The points I'm wondering are:
- What version of guix shall be used? Always the latest one?
- The runners need a docker image. Where to I get one? Possibly
containing a warmed-up cache? (Using a Debian docker image and
installing guix into it on every run sounds like a bad idea.)
- OTOH /gnu/tore could be cached. How much data would this
typically be?
- How to clean the cache from unreachable items?
- How to publish the substitutes?
Why gitlab-ci? Well, the channel will live on a gitlab instance,
thus using that infrastructure would simplify things and avoid
single users managing processes.
-- Regards Hartmut Goebel | Hartmut Goebel | h.goe...@crazy-compilers.com | | www.crazy-compilers.com | compilers which you thought are impossible |