Subject: Using a CDN or some other mirror?

From: [email-masked] (Ludovic Courtès)
Date: Mon, 03 Dec 2018 17:12:10 +0100

Hello,

Ludovic Courtès <[email-masked]> skribis:

> These patches (actually the last one) switch Guix to default to
> <https://ci.guix.info> for substitutes, in preparation for the
> upcoming 0.16.0 release (hopefully this week!).

Right now, ci.guix.info points to berlin.guixsd.org, the front-end of
the build farm hosted at the MDC.

The previous setup was that mirror.hydra.gnu.org mirrors hydra.gnu.org
(the actual build farm front-end) using an nginx proxy:

  https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/nginx/mirror.conf

This provides a bit of redundancy that we don’t have currently for
berlin.

Thus, I’m thinking about using a similar setup, but hosting the mirror
on some Big Corp CDN or similar.  Chris Marusich came up with a setup
along these lines a while back:

  https://lists.gnu.org/archive/html/guix-devel/2016-03/msg00312.html

Compared to Chris’s setup, given that ‘guix publish’ now provides
‘Cache-Control’ headers (that was not the case back then, see
<https://lists.gnu.org/archive/html/guix-devel/2016-03/msg00360.html>),
caching in the proxy should Just Work.

I would like us to set up such a mirror for berlin and then have
ci.guix.info point to that.  The project should be able to pay the
hosting fees.

Thoughts?

Would someone like to get started?  You’ll undoubtedly get all the
appreciation of each one of us and a beverage of your choice next time
we meet!  :-)

Thanks,
Ludo’.