[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 02/02: services: Add Gitolite.
From: |
Christopher Baines |
Subject: |
Re: 02/02: services: Add Gitolite. |
Date: |
Sun, 30 Sep 2018 11:28:14 +0100 |
User-agent: |
mu4e 1.0; emacs 26.1 |
Mark H Weaver <address@hidden> writes:
> Hi Christopher,
>
> address@hidden (Christopher Baines) writes:
>
>> cbaines pushed a commit to branch master
>> in repository guix.
>>
>> commit 258a6d944ed891fa92fa87a16731e5dfe0bac477
>> Author: Christopher Baines <address@hidden>
>> Date: Fri Jul 13 20:39:46 2018 +0100
>>
>> services: Add Gitolite.
>>
>> * gnu/services/version-control.scm (<gitolite-configuration>,
>> <gitolite-rc-file>): New record types.
>> (gitolite-accounts, gitolite-activation): New procedures.
>> (gitolite-service-type): New variables.
>> * gnu/tests/version-control.scm (%gitolite-test-admin-keypair,
>> %gitolite-os,
>> %test-gitolite): New variables.
>> (run-gitolite-test): New procedure.
>> * doc/guix.texi (Version Control): Document the gitolite service.
>
> This commit has a flaw which broke evaluations on Hydra, so I reverted
> it for now.
>
>> +(define-gexp-compiler (gitolite-rc-file-compiler
>> + (file <gitolite-rc-file>) system target)
>> + (match file
>> + (($ <gitolite-rc-file> umask git-config-keys roles enable)
>> + (apply text-file* "gitolite.rc"
>> + `("%RC = (\n"
>> + " UMASK => " ,(format #f "~4,'0o" umask) ",\n"
>
> The problem is here, in the call to 'format'. Guile has two variants of
> the 'format' procedure: a very simple one which is always available
> (also known as 'simple-format'), and a much more complex and featureful
> variant in (ice-9 format). In the code above, you are assuming that
> (ice-9 format) has been loaded, but you have not arranged for that to
> happen. During the Hydra evaluation, this led to the following error:
>
> --8<---------------cut here---------------start------------->8---
> 0 (simple-format #f "~4,'0o" 63)
>
> ERROR: In procedure simple-format:
> In procedure simple-format: FORMAT: Unsupported format option ~4 - use (ice-9
> format) instead
> --8<---------------cut here---------------end--------------->8---
Thanks for looking at this Mark, do you know where I can find out what
Hydra is doing when it encounters this error? I tried looking around the
web interface, but the latest evaluation I could find was from 2017
apparently.
> I guess that the fix will involve 'with-imported-modules'.
> Could you take a look?
Sure. The confusing thing to me here is that this code works when using
the service, including the system test (at least when I run it
locally). Also, as far as I understand, even though the code is within a
gexp-compiler, it doesn't even involve the store, as the call to format
happens before the g-expression is generated.
It sounds to me like adding #:use-modules (ice-9 format) to (gnu
services version-control) would fix this, but I'll wait until I can
reproduce the failure before re-adding the service.
Thanks,
Chris
signature.asc
Description: PGP signature