GNU bug report logs - #77585
[PATCH] services: mumi: Add Debbugs rsync as shepherd timer.

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: guix-patches; Reported by: Arun Isaac <arunisaac@HIDDEN>; Keywords: patch; Done: Maxim Cournoyer <maxim.cournoyer@HIDDEN>; Maintainer for guix-patches is guix-patches@HIDDEN.

Message received at 77585-done <at> debbugs.gnu.org:


Received: (at 77585-done) by debbugs.gnu.org; 23 Apr 2025 02:19:24 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Tue Apr 22 22:19:24 2025
Received: from localhost ([127.0.0.1]:51127 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u7Phs-0006Et-3h
	for submit <at> debbugs.gnu.org; Tue, 22 Apr 2025 22:19:24 -0400
Received: from mail-pl1-x634.google.com ([2607:f8b0:4864:20::634]:52465)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <maxim.cournoyer@HIDDEN>)
 id 1u7Phm-0006ER-PO
 for 77585-done <at> debbugs.gnu.org; Tue, 22 Apr 2025 22:19:20 -0400
Received: by mail-pl1-x634.google.com with SMTP id
 d9443c01a7336-227c7e57da2so51405505ad.0
 for <77585-done <at> debbugs.gnu.org>; Tue, 22 Apr 2025 19:19:18 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1745374752; x=1745979552; darn=debbugs.gnu.org;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=BcUyQBTCJSOVP7zvWyMQIIppIhmjjH5ycgopu8nEH1M=;
 b=OZ/40nfp2C19A3GAg5jDMf+RjlyI2kUzhvjpO/launsSOzbGSfQxGNC4tYOIBeSZr3
 yH+OR8bi+uijCq4/McrqswQnBxDmGnoXX7mOJzQyenfo9F7HhekCZdT4l3CJG6ebUjZu
 ab8aT8B9zz1eSroxAg8V2vfs67AHuOQ8ve5sFqe54lhn2BNmVc5/wwA57H9EH//6MaT0
 1y6hR0N6ntn/C7oZxKUe0pUqfOUZ6pggTfyw98f0YkbjY//sJ2duJG2VeUyRkj/msoTF
 mHcclI1U1+SfkRtRJ+qbuYn//n/5sdtDCg9aqtlg68sDtG3oDp7nUszj1eR1Ah0U/mOU
 hhLw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1745374752; x=1745979552;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=BcUyQBTCJSOVP7zvWyMQIIppIhmjjH5ycgopu8nEH1M=;
 b=PDBi/q7kMOOGrIBjA+8sXFUCay1DbXi8shnrp3M4SW82q/hM0Ak6MPdtEjXd/zkPiP
 o5yeicRnnv6Hgu6xPmn3gYgDBNKCZ06IW47gSHfL3JOq7bwNu0dnR0/+nyOdOTBzA4D7
 agFgIReVdL/ORS1rVv/UfBRnE6EO/N7adCGVzC/lHPJF8OelZIElP+JjcMDEt9fhdlGW
 MmoxeNoLEk2dFyT77T1dAsQ0ZqYTTbgUkLuF/kyluo3UdBTbNeFvMPjk7PnDjaJ+ESEE
 aHXK8xxgT6cK1eGw/0+05JsLjGFzTRmdMN0GkOvE25kM996jdTm37WVFblSackEAD32i
 2S7w==
X-Gm-Message-State: AOJu0YxQ70qPk3/DTdjpGcktlDBb9Q9QVNLKIJnq8aWs/stwIy4Vsguy
 jcpQBuIymJJNIkP4tJrOZm0u8dw9IV3OZes1dqpysvKDwWsgexl+
X-Gm-Gg: ASbGncuqBu7zO+hNpo/lyEQhyukguIYZ1tDAcoCwqu/TXw6Q6S+KlPnAb8jeCUklBJo
 mV+kS4xfUSV6YJP6v99q5/pSocfY89wQC23WOGFETfAcZdAo4U/0BM99An2QPPnwfWh/iLj6XJ2
 i+AnFG+2H6DCO3cqD+4x8naS2y4HOHEm9paxdN/uYV9TcUQ7zyqxlr678zGdiPMxQeFwTP+b+ju
 EIr3Xob5Ay6dBJUjam3rVJEBSe0ByrISK12a+wqHzi8V5vDfRAek7wuEMIJGeG4fz7PNbjMhnBq
 qj0LLY3hb0DFSSGSj58Y/BhxUtQ1lPE38Fk2jETs2qrV9FJ1Kw==
X-Google-Smtp-Source: AGHT+IE0a6Js43PMOYsRNNttHYtWII6H24Ty8WiCYPMfzLouo0e7YXd/Fir8EGqCQVrUoTBzYaUqTA==
X-Received: by 2002:a17:902:ce01:b0:223:569d:9a8b with SMTP id
 d9443c01a7336-22c53580d1dmr220634715ad.18.1745374752093; 
 Tue, 22 Apr 2025 19:19:12 -0700 (PDT)
Received: from terra ([2405:6586:be0:0:83c8:d31d:2cec:f542])
 by smtp.gmail.com with ESMTPSA id
 d9443c01a7336-22c60474848sm73906895ad.125.2025.04.22.19.19.10
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Tue, 22 Apr 2025 19:19:11 -0700 (PDT)
From: Maxim Cournoyer <maxim.cournoyer@HIDDEN>
To: Arun Isaac <arunisaac@HIDDEN>
Subject: Re: [bug#77585] [PATCH] services: mumi: Add Debbugs rsync as
 shepherd timer.
In-Reply-To: <877c3xhs0l.fsf@HIDDEN> (Arun Isaac's message of "Sun, 
 06 Apr 2025 22:58:02 +0100")
References: <4977368b813a68f775050ff3b00a39139cf2b762.1743967795.git.arunisaac@HIDDEN>
 <877c3xhs0l.fsf@HIDDEN>
Date: Wed, 23 Apr 2025 11:19:09 +0900
Message-ID: <87ikmvzkki.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77585-done
Cc: Ludovic =?utf-8?Q?Court=C3=A8s?= <ludo@HIDDEN>, 77585-done <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hi,

Arun Isaac <arunisaac@HIDDEN> writes:

[...]

I think you'll see the new timer in 'herd status', e.g. on my machine:

Running timers:
 + log-cleanup
 + log-rotation

I assume they should be started automatically.

I'll close this issue as I'm assuming it's been taken care of already o
berlin.  Feel free to reopen if there are issues.

-- 
Thanks,
Maxim




Notification sent to Arun Isaac <arunisaac@HIDDEN>:
bug acknowledged by developer. Full text available.
Reply sent to Maxim Cournoyer <maxim.cournoyer@HIDDEN>:
You have taken responsibility. Full text available.

Message received at 77585 <at> debbugs.gnu.org:


Received: (at 77585) by debbugs.gnu.org; 8 Apr 2025 01:57:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 07 21:57:07 2025
Received: from localhost ([127.0.0.1]:57780 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u1yD4-0008Nu-Sa
	for submit <at> debbugs.gnu.org; Mon, 07 Apr 2025 21:57:07 -0400
Received: from mail-qk1-x729.google.com ([2607:f8b0:4864:20::729]:47444)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <maxim.cournoyer@HIDDEN>)
 id 1u1yD2-0008NB-Rs
 for 77585 <at> debbugs.gnu.org; Mon, 07 Apr 2025 21:57:05 -0400
Received: by mail-qk1-x729.google.com with SMTP id
 af79cd13be357-7c597760323so451812685a.3
 for <77585 <at> debbugs.gnu.org>; Mon, 07 Apr 2025 18:57:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1744077418; x=1744682218; darn=debbugs.gnu.org;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=pzR8WMxgsjF6Fpk4qZ0UNO0DIaAtwx9Y10xW1tjAHI4=;
 b=OJruTqh4/DBO5vBevsL4OMhcxvHYttxvDXf1y3ibUGdn8P4XGw0FOEnbqzjkYvc1pd
 uzD+b6ZewO+fUz0cCanaU2rr4SL6e09dCXZZ52z3Ei4ClfZmx74bQaNybUJaklUErP1f
 448IPalE/CpwnBCHsFOxfAD9UCwjn67zX9p3UHDmbDvSUugrKfKgUpuwGFKX0ho1lQCV
 oX6mo5XudFN40qc3uj5shusYGbxVW4dHJsXH4nGZDvRQDl2ifu/RJ8dVGVmPeBtwWsGi
 2sUHOVP74l+wNlaCLOrgnNMr5FlrMf6wjub6X9Iuut00wBT0p0MB56L7+1DOFYD5ejuw
 75qg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1744077418; x=1744682218;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=pzR8WMxgsjF6Fpk4qZ0UNO0DIaAtwx9Y10xW1tjAHI4=;
 b=dN/vAad3IuamEp1eQvyHf9nDgD8RXIFrgh11jW5oElrS2CC7Ksxq5FYaENQRHy68J4
 GmgsUpM+q/xRXGYUZ7xPTnwOrscHyRarDCqNlfcp2B26WyF+/mWGmPEZA+mvbno9/Kzx
 LEONLjoviewIEIr3cLXfiehytxgN0rw9GNNBlUgn/irem0S/CevLk/zyLNOOigTmzTT4
 piwwU484NW4x+nC2bS78cDiLl7sAVkv8AQHKkPgeaLrbJE9TjqbNWJAhhHJ4gNxRfOd7
 Iee5PTrPIiuT35q1OJcmskGFVGPWYcWQjFUS/4KRWniDTCLRtY8sDW7FQgEhkiVVSi2B
 Y0Tg==
X-Gm-Message-State: AOJu0Yx/MKiUAMRi1nksP5l+fN6J+/9KkliUf7JtWWE8UvFt+OOj9nnH
 HGHEEDeuRogM7G0FjzplUNbvmsGImmPfFSuBRiz+Hwc1cMoUCPngAiuQdqNK
X-Gm-Gg: ASbGncuiDNEGnwJSyBrW2nkixlilIVDD6sdemF82oVWtGV2O+FT7MKcwCVEJ387e8X3
 0Qp9kFFUhdosKVAXdNZW0kirgdSsVBz3AxzUIm9dn9eVqceyunT0WNFjaKIE3nRNX5IKiit6m+P
 azxw6jKD2OD8pqIZZnZJoazG4q54Lse4548rJHhLFrhQxKN6T5luWTWkHZ9K2sE9t3wJMBsBDE5
 TmqIJfyuJUXaV7qcW27DWVM99IC3pVFlCjBeIAKKSLNe36dK03my2uL901HYouKaDP6ui+wKGkW
 x/qfPRDfT1LmDRFNIBJdoz0dxmTrPymVuP1+uQO+9fsl8u8CnUuLNB8i70aLnVSmCcOqrlTgfIy
 a
X-Google-Smtp-Source: AGHT+IFnHv2wBAKQ5m0GEf/GDuoi4aAd9SqcsYklAsnkJv3iC8Om0O1b2j+1zvesfUOdMLs3TfVOiQ==
X-Received: by 2002:a05:620a:298b:b0:7c5:4caa:21af with SMTP id
 af79cd13be357-7c77ddde0eamr1888544585a.53.1744077418674; 
 Mon, 07 Apr 2025 18:56:58 -0700 (PDT)
Received: from terra (vps-6234970c.vps.ovh.ca. [51.222.13.224])
 by smtp.gmail.com with ESMTPSA id
 af79cd13be357-7c76e96cf01sm682915885a.55.2025.04.07.18.56.56
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Mon, 07 Apr 2025 18:56:58 -0700 (PDT)
From: Maxim Cournoyer <maxim.cournoyer@HIDDEN>
To: Arun Isaac <arunisaac@HIDDEN>
Subject: Re: [PATCH v2] services: mumi: Add Debbugs rsync as shepherd timer.
In-Reply-To: <cda6b6e380b0bddfbfacb7214e74d88b9a13cbbf.1743975912.git.arunisaac@HIDDEN>
 (Arun Isaac's message of "Sun, 6 Apr 2025 22:52:30 +0100")
References: <cda6b6e380b0bddfbfacb7214e74d88b9a13cbbf.1743975912.git.arunisaac@HIDDEN>
Date: Tue, 08 Apr 2025 10:56:39 +0900
Message-ID: <87tt6zza94.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77585
Cc: 77585 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hi Arun,

Arun Isaac <arunisaac@HIDDEN> writes:

> * gnu/services/web.scm (<mumi-configuration>)[data-directory, rsync-remote,
> rsync-flags]: New fields.
> (%mumi-worker-log): Delete variable.
> (%mumi-rsync-and-index-log): New variable.
> (mumi-rsync-and-index): New function.
> (mumi-shepherd-services): Remove mumi-worker service. Add mumi-rsync-and-index
> service.
> (mumi-service-type): Remove default value.
> * doc/guix.texi (Web Services)[mumi]: Document data-directory, rsync-remote
> and rsync-flags fields.
>
> Co-authored-by: Maxim Cournoyer <maxim.cournoyer@HIDDEN>

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail>

-- 
Thanks,
Maxim




Information forwarded to guix-patches@HIDDEN:
bug#77585; Package guix-patches. Full text available.

Message received at 77585 <at> debbugs.gnu.org:


Received: (at 77585) by debbugs.gnu.org; 6 Apr 2025 21:58:19 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Apr 06 17:58:19 2025
Received: from localhost ([127.0.0.1]:49987 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u1Y0Q-0006RU-OV
	for submit <at> debbugs.gnu.org; Sun, 06 Apr 2025 17:58:19 -0400
Received: from mugam.systemreboot.net ([139.59.75.54]:36148)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arunisaac@HIDDEN>)
 id 1u1Y0M-0006Qr-Hj
 for 77585 <at> debbugs.gnu.org; Sun, 06 Apr 2025 17:58:16 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=systemreboot.net;
 s=default; t=1743976688;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding:  in-reply-to:in-reply-to; 
 bh=9K1FazHOJwlFuXQpJaqIuLjfVF8+yBRCJWaXo9H1zLY=;
 b=Ad8ew8K5+CeJ9wd0e7NYd4Vi4sSLMYQLSzY87UqfDQ83kbowDTfsmoS/fDAPpOKeM8ZXNb
 igqWXVndoFrDfcDWpSaRS9DPpmWt40cvWuvxVwh1C2NcxDZwL4q9uxVF6ybcOY3mVDHU5w
 EudGLXWo8BC4Gd2ycHvnmn4CxY38wazMlHsdU/INNqbjoW85U6vpGpOe/IEz9fJYQxp2YF
 eIeXJsqUe2Toy8al61iHDrtB5OO0614z1bCfizHXGwTWtCb3Ze2Xc4PA8tmW7l+N0yyc6Y
 sZ5sqgan5BTWRJDYtQJ8M8cF8/W0PBHlF4pO6y9BE2a/flzneFdLE7cZcbA5zQ==
Received: from localhost (<unknown> [192.168.2.1])
 by mugam.systemreboot.net (OpenSMTPD) with ESMTPSA id 4005b337
 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); 
 Sun, 6 Apr 2025 21:58:08 +0000 (UTC)
From: Arun Isaac <arunisaac@HIDDEN>
To: 77585 <at> debbugs.gnu.org
Subject: Re: [PATCH] services: mumi: Add Debbugs rsync as shepherd timer.
In-Reply-To: <87wmbxyr7d.fsf@HIDDEN>
Date: Sun, 06 Apr 2025 22:58:02 +0100
Message-ID: <877c3xhs0l.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77585
Cc: Arun Isaac <arunisaac@HIDDEN>,
 Ludovic =?utf-8?Q?Court=C3=A8?= =?utf-8?Q?s?= <ludo@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)


Hi Ludo,

> As a matter of style, I would return a program
> (=E2=80=98mumi-rsync-and-index-program=E2=80=99) rather than a gexp; I fi=
nd it clearer
> and more robust (the gexp leaves it up to the caller to insert it in the
> right context).

Good point, thanks! I was merely trying to save whitespace in the left.
Maybe we should indent program-file differently in the future?

But, fixed for now.

>> +                      (command
>> +                       (program-file "mumi-rsync-and-index"
>> +                                     (mumi-rsync-and-index-gexp config)=
))
>
> I think you=E2=80=99re missing #$ before (mumi-rsync-and-index-gexp confi=
g).

Good catch, thanks!

>> +                      #:log-file #$%mumi-rsync-and-index-log
>> +                      #:max-duration (* 60 60)
>> +                      #:wait-for-termination? #t))
>
> Every minute is a lot, especially since it may take several seconds to
> establish the rsync-over-ssh connection.  It=E2=80=99s mitigated by the u=
se of
> #:wait-for-termination? but still sounds fairly aggressive to me.
> (It would be ideal if the Debbugs instance could somehow notify mumi.)

I have switched to a polling frequency of 2 minutes now. Still quite
high, but we can cut it down to 5 minutes if it's too much.

> Perhaps mention the polling frequency in the manual?

Done now.

When I deploy this on berlin, how do I get shepherd to pick up the new
timer service. Is there a `herd reload' or similar? Or, do I have to
reboot?

Thanks,
Arun




Information forwarded to guix-patches@HIDDEN:
bug#77585; Package guix-patches. Full text available.

Message received at 77585 <at> debbugs.gnu.org:


Received: (at 77585) by debbugs.gnu.org; 6 Apr 2025 21:52:56 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Apr 06 17:52:55 2025
Received: from localhost ([127.0.0.1]:49973 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u1XvD-00062H-7q
	for submit <at> debbugs.gnu.org; Sun, 06 Apr 2025 17:52:55 -0400
Received: from mugam.systemreboot.net ([139.59.75.54]:40168)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arunisaac@HIDDEN>)
 id 1u1Xv8-00061h-QV
 for 77585 <at> debbugs.gnu.org; Sun, 06 Apr 2025 17:52:53 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=systemreboot.net;
 s=default; t=1743976362;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding;
 bh=0eqCNLPPg740yMkUhyBqWUKBAqcQZ52HZOekBkj2HwM=;
 b=aBSWCDWepGbRf73CsvFohLgcImIdzyaB3lAGU1uj+c3BtAiwa0Ber2O4Sjnsze90wO6Ugf
 +zC/CX07eZVWLchhtFgg/EzlDE2fXlCahzaZGoJvsHRTFLjYM6ZPJZKtOg6jUP0dwoy7Im
 aBaWOXPSzW44iNBaxS9xOfycI3mOBShnFIF3rO/hdbn4pmqWUmIvKEdftyT9S+iVn/3EeP
 Phc+PLaIZKIfj/kEdqNHjs6GdZz768TBty2QL0Vb9ohZQlJIOr6YLwuia0NsgWPMx9Ow4Q
 7R+ZDl/6iAPRaEAYpoHL6vM3LdOea0v6C7UkXuToBRjs3q7XcrDJcIx+s/VXLQ==
Received: from localhost.localdomain (<unknown> [192.168.2.1])
 by mugam.systemreboot.net (OpenSMTPD) with ESMTPSA id 8139baf1
 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); 
 Sun, 6 Apr 2025 21:52:42 +0000 (UTC)
From: Arun Isaac <arunisaac@HIDDEN>
To: 77585 <at> debbugs.gnu.org
Subject: [PATCH v2] services: mumi: Add Debbugs rsync as shepherd timer.
Date: Sun,  6 Apr 2025 22:52:30 +0100
Message-ID: <cda6b6e380b0bddfbfacb7214e74d88b9a13cbbf.1743975912.git.arunisaac@HIDDEN>
X-Mailer: git-send-email 2.49.0
MIME-Version: 1.0
X-Debbugs-Cc: Arun Isaac <arunisaac@HIDDEN>, Ludovic Courtès <ludo@HIDDEN>, Maxim Cournoyer <maxim.cournoyer@HIDDEN>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77585
Cc: Arun Isaac <arunisaac@HIDDEN>,
 Maxim Cournoyer <maxim.cournoyer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

* gnu/services/web.scm (<mumi-configuration>)[data-directory, rsync-remote,
rsync-flags]: New fields.
(%mumi-worker-log): Delete variable.
(%mumi-rsync-and-index-log): New variable.
(mumi-rsync-and-index): New function.
(mumi-shepherd-services): Remove mumi-worker service. Add mumi-rsync-and-index
service.
(mumi-service-type): Remove default value.
* doc/guix.texi (Web Services)[mumi]: Document data-directory, rsync-remote
and rsync-flags fields.

Co-authored-by: Maxim Cournoyer <maxim.cournoyer@HIDDEN>
---
 doc/guix.texi        | 11 +++++++++
 gnu/services/web.scm | 58 ++++++++++++++++++++++++++++++++------------
 2 files changed, 54 insertions(+), 15 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 12f155e912..8aa0b5e3ba 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -33999,6 +33999,17 @@ Web Services
 @item @code{mumi} (default: @code{mumi})
 The Mumi package to use.
 
+@item @code{data-directory} (default: @file{"/var/mumi/data"})
+Data directory to store Debbugs data from upstream Debbugs instance.
+
+@item @code{rsync-remote}
+Remote rsync path from which to download Debbugs data.  The remote is
+polled every 2 minutes, unless a previous instance of rsync is already
+running.
+
+@item @code{rsync-flags} (default: @code{'()})
+Additional flags to pass to @command{rsync}.
+
 @item @code{mailer?} (default: @code{#true})
 Whether to enable or disable the mailer component.
 
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index f8cf06fb48..3f0eb8780a 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -18,6 +18,7 @@
 ;;; Copyright © 2023 Bruno Victal <mirai@HIDDEN>
 ;;; Copyright © 2023 Miguel Ángel Moreno <mail@HIDDEN>
 ;;; Copyright © 2024 Leo Nikkilä <hello@HIDDEN>
+;;; Copyright © 2025 Maxim Cournoyer <maxim.cournoyer@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -51,6 +52,7 @@ (define-module (gnu services web)
   #:use-module (gnu packages php)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
+  #:use-module (gnu packages rsync)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages logging)
@@ -295,6 +297,9 @@ (define-module (gnu services web)
             mumi-configuration
             mumi-configuration?
             mumi-configuration-mumi
+            mumi-configuration-data-directory
+            mumi-configuration-rsync-remote
+            mumi-configuration-rsync-flags
             mumi-configuration-mailer?
             mumi-configuration-sender
             mumi-configuration-smtp
@@ -2033,6 +2038,11 @@ (define-record-type* <mumi-configuration>
   mumi-configuration make-mumi-configuration
   mumi-configuration?
   (mumi    mumi-configuration-mumi (default mumi))
+  (data-directory mumi-configuration-data-directory
+                  (default "/var/mumi/data"))
+  (rsync-remote mumi-configuration-rsync-remote)
+  (rsync-flags mumi-configuration-rsync-flags
+               (default '()))
   (mailer? mumi-configuration-mailer? (default #t))
   (sender  mumi-configuration-sender (default #f))
   (smtp    mumi-configuration-smtp (default #f))
@@ -2080,7 +2090,7 @@ (define %mumi-log "/var/log/mumi.log")
 
 (define %mumi-mailer-log "/var/log/mumi.mailer.log")
 
-(define %mumi-worker-log "/var/log/mumi.worker.log")
+(define %mumi-rsync-and-index-log "/var/log/mumi.rsync-and-index.log")
 
 (define mumi-package-configuration->alist
   (match-record-lambda <mumi-package-configuration>
@@ -2118,6 +2128,24 @@ (define mumi-config-file
                                           packages)))
                               <>))))))
 
+(define (mumi-rsync-and-index config)
+  (match-record config <mumi-configuration>
+    (data-directory rsync-remote rsync-flags)
+    (program-file "mumi-rsync-and-index"
+                  (with-imported-modules '((guix build utils))
+                    #~(begin
+                        (use-modules (guix build utils))
+
+                        (invoke #$(file-append rsync "/bin/rsync")
+                                "--delete" "--archive" "--verbose"
+                                "--timeout" "120"
+                                #$@rsync-flags
+                                #$rsync-remote
+                                #$data-directory)
+                        (invoke #$(file-append mumi "/bin/mumi") "fetch"
+                                (string-append "--config="
+                                               #$(mumi-config-file config))))))))
+
 (define (mumi-shepherd-services config)
   (define environment
     #~(list "LC_ALL=en_US.utf8"
@@ -2140,17 +2168,19 @@ (define (mumi-shepherd-services config)
                       #:log-file #$%mumi-log))
             (stop #~(make-kill-destructor)))
            (shepherd-service
-            (provision '(mumi-worker))
-            (documentation "Mumi bug-tracking web interface database worker.")
-            (requirement '(user-processes networking))
-            (start #~(make-forkexec-constructor
-                      `(#$(file-append mumi "/bin/mumi") "worker"
-                        ,(string-append "--config="
-                                        #$(mumi-config-file config)))
-                      #:environment-variables #$environment
-                      #:user "mumi" #:group "mumi"
-                      #:log-file #$%mumi-worker-log))
-            (stop #~(make-kill-destructor)))
+            (provision '(mumi-rsync-and-index))
+            (modules '((shepherd service timer)))
+            (start #~(make-timer-constructor
+                      ;; Run every 2 minutes, unless an instance of this job
+                      ;; is already running.
+                      (calendar-event #:minutes (iota 30 0 2))
+                      (command #$(mumi-rsync-and-index config))
+                      #:log-file #$%mumi-rsync-and-index-log
+                      #:max-duration (* 60 60)
+                      #:wait-for-termination? #t))
+            (stop #~(make-timer-destructor))
+            (actions (list shepherd-trigger-action))
+            (documentation "Rsync and index the GNU Debbugs data"))
            (shepherd-service
             (provision '(mumi-mailer))
             (documentation "Mumi bug-tracking web interface mailer.")
@@ -2181,9 +2211,7 @@ (define mumi-service-type
           (service-extension shepherd-root-service-type
                              mumi-shepherd-services)))
    (description
-    "Run Mumi, a Web interface to the Debbugs bug-tracking server.")
-   (default-value
-     (mumi-configuration))))
+    "Run Mumi, a Web interface to the Debbugs bug-tracking server.")))
 
 (define %default-gmnisrv-config-file
   (plain-file "gmnisrv.ini" "

base-commit: ada14197fb465c1c90efbc450308c14f077ff167
-- 
2.49.0





Information forwarded to arunisaac@HIDDEN, ludo@HIDDEN, maxim.cournoyer@HIDDEN, guix-patches@HIDDEN:
bug#77585; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 6 Apr 2025 20:23:52 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Apr 06 16:23:52 2025
Received: from localhost ([127.0.0.1]:49851 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u1WX1-0007dl-Ou
	for submit <at> debbugs.gnu.org; Sun, 06 Apr 2025 16:23:52 -0400
Received: from lists.gnu.org ([2001:470:142::17]:32914)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <ludo@HIDDEN>) id 1u1WWz-0007dD-8M
 for submit <at> debbugs.gnu.org; Sun, 06 Apr 2025 16:23:49 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>) id 1u1WWt-0008Q6-9c
 for guix-patches@HIDDEN; Sun, 06 Apr 2025 16:23:43 -0400
Received: from fencepost.gnu.org ([2001:470:142:3::e])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <ludo@HIDDEN>)
 id 1u1WWr-0004kR-2L; Sun, 06 Apr 2025 16:23:41 -0400
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org;
 s=fencepost-gnu-org; h=MIME-Version:Date:References:In-Reply-To:Subject:To:
 From; bh=mzQyvWv88IZLZ1dUZ15dV6qKcKefzoLrWdAS3eR9W2c=; b=YmV9Npu6rwVDkegVAT8v
 fWRR8EEmv4ZwGG9VQSEYeXjFbJLQoVEZJbp1MBAfKDOy4V0jbLR1MfuXgUO4gohU+qbQmJs6tpCK2
 1JV9o7e5bw5enF2Y4WMpdTrhuMgfJPILXEt4f2XS63KA2e6WwH+/arVPRzPgdDjU2pWQaBayrajks
 WMkRMoIGUTcEk58WlkP4psv/U+gOxAS8Ho8gTXLI4zFJHv0Z6q+cIOWLknim0BB+yt6t51lEr8jwx
 qOQdVNk/fCqWtbANJvAJUj4gCcAxDOXIE/U9semGbEl/MrfP9qKF7HkTERGSoDi6Fvhz/Y+Lv+Zcf
 8QFwLppwOah6KQ==;
From: =?utf-8?Q?Ludovic_Court=C3=A8s?= <ludo@HIDDEN>
To: Arun Isaac <arunisaac@HIDDEN>
Subject: Re: [PATCH] services: mumi: Add Debbugs rsync as shepherd timer.
In-Reply-To: <4977368b813a68f775050ff3b00a39139cf2b762.1743967795.git.arunisaac@HIDDEN>
 (Arun Isaac's message of "Sun, 6 Apr 2025 20:30:27 +0100")
References: <4977368b813a68f775050ff3b00a39139cf2b762.1743967795.git.arunisaac@HIDDEN>
X-URL: http://www.fdn.fr/~lcourtes/
X-Revolutionary-Date: Septidi 17 Germinal an 233 de la =?utf-8?Q?R=C3=A9vo?=
 =?utf-8?Q?lution=2C?= jour du =?utf-8?B?TcOpbMOoemU=?=
X-PGP-Key-ID: 0x090B11993D9AEBB5
X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc
X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4  0CFB 090B 1199 3D9A EBB5
X-OS: x86_64-pc-linux-gnu
Date: Sun, 06 Apr 2025 22:23:34 +0200
Message-ID: <87wmbxyr7d.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: -0.0 (/)
X-Debbugs-Envelope-To: submit
Cc: Maxim Cournoyer <maxim.cournoyer@HIDDEN>, guix-patches@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

Hi Arun,

Arun Isaac <arunisaac@HIDDEN> skribis:

> * gnu/services/web.scm (<mumi-configuration>)[data-directory, rsync-remot=
e,
> rsync-flags]: New fields.
> (%mumi-worker-log): Delete variable.
> (%mumi-rsync-and-index-log): New variable.
> (mumi-rsync-and-index-gexp): New function.
> (mumi-shepherd-services): Remove mumi-worker service. Add mumi-rsync-and-=
index
> service.
> (mumi-service-type): Remove default value.
> * doc/guix.texi (Web Services)[mumi]: Document data-directory, rsync-remo=
te
> and rsync-flags fields.
>
> Co-authored-by: Maxim Cournoyer <maxim.cournoyer@HIDDEN>

[...]

> +(define (mumi-rsync-and-index-gexp config)

As a matter of style, I would return a program
(=E2=80=98mumi-rsync-and-index-program=E2=80=99) rather than a gexp; I find=
 it clearer
and more robust (the gexp leaves it up to the caller to insert it in the
right context).

> +            (start #~(make-timer-constructor
> +                      (calendar-event)

You can add a margin comment say =E2=80=9Cevery minute=E2=80=9D, for clarit=
y.

> +                      (command
> +                       (program-file "mumi-rsync-and-index"
> +                                     (mumi-rsync-and-index-gexp config)))

I think you=E2=80=99re missing #$ before (mumi-rsync-and-index-gexp config).

> +                      #:log-file #$%mumi-rsync-and-index-log
> +                      #:max-duration (* 60 60)
> +                      #:wait-for-termination? #t))

Every minute is a lot, especially since it may take several seconds to
establish the rsync-over-ssh connection.  It=E2=80=99s mitigated by the use=
 of
#:wait-for-termination? but still sounds fairly aggressive to me.
(It would be ideal if the Debbugs instance could somehow notify mumi.)

Perhaps mention the polling frequency in the manual?

Thanks,
Ludo=E2=80=99.




Information forwarded to guix-patches@HIDDEN:
bug#77585; Package guix-patches. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 6 Apr 2025 19:31:30 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sun Apr 06 15:31:29 2025
Received: from localhost ([127.0.0.1]:49785 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u1ViL-00063B-CA
	for submit <at> debbugs.gnu.org; Sun, 06 Apr 2025 15:31:29 -0400
Received: from lists.gnu.org ([2001:470:142::17]:56200)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <arunisaac@HIDDEN>)
 id 1u1ViH-00062R-MC
 for submit <at> debbugs.gnu.org; Sun, 06 Apr 2025 15:31:26 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arunisaac@HIDDEN>)
 id 1u1Vi4-0008Vl-LL
 for guix-patches@HIDDEN; Sun, 06 Apr 2025 15:31:12 -0400
Received: from mugam.systemreboot.net ([139.59.75.54])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <arunisaac@HIDDEN>)
 id 1u1Vhz-0007d2-Uh; Sun, 06 Apr 2025 15:31:12 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=systemreboot.net;
 s=default; t=1743967848;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 content-transfer-encoding:content-transfer-encoding;
 bh=vveJcJXC7/7PlJkZNcGAv0/D7kGh4o1ufowB6lDbTRQ=;
 b=lIkaeOk2KWLtQrp0K7JZcNJxrhiNwP1g0xHKU5ewHYZQ5OrhUgySRnPIX9NOCzekRTvOKr
 oYPpLHLrkrkr7Rr6/Poq+c663bktWMaR2flOlWfYOTUQByuhSKLRVq412jAXBU/aAuIATk
 cI66gVPPJtLm4wbAm0KeTQgrXfDilDLMLqFkjQfqbsCfOdoW2Pp1JV5dfsOu3YTMG1SSq2
 M0pOHwmlbKzi36yu2SZ/Tk0zviKwpfdWCUHtdCGGXtDn5t2TSbMi4hGshxC/Qq756tk6e5
 I4HWHIrvDBy1SscNtqvf8SzgKctV11od2I3zdx2de8574mBWWw8UGJ32TIM0jA==
Received: from localhost.localdomain (<unknown> [192.168.2.1])
 by mugam.systemreboot.net (OpenSMTPD) with ESMTPSA id 2338637a
 (TLSv1.3:TLS_AES_256_GCM_SHA384:256:NO); 
 Sun, 6 Apr 2025 19:30:47 +0000 (UTC)
From: Arun Isaac <arunisaac@HIDDEN>
To: guix-patches@HIDDEN
Subject: [PATCH] services: mumi: Add Debbugs rsync as shepherd timer.
Date: Sun,  6 Apr 2025 20:30:27 +0100
Message-ID: <4977368b813a68f775050ff3b00a39139cf2b762.1743967795.git.arunisaac@HIDDEN>
X-Mailer: git-send-email 2.49.0
MIME-Version: 1.0
X-Debbugs-Cc: Ludovic Courtès <ludo@HIDDEN>, Maxim Cournoyer <maxim.cournoyer@HIDDEN>
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Received-SPF: pass client-ip=139.59.75.54;
 envelope-from=arunisaac@HIDDEN; helo=mugam.systemreboot.net
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
 SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.9 (/)
X-Debbugs-Envelope-To: submit
Cc: Arun Isaac <arunisaac@HIDDEN>,
 =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@HIDDEN>,
 Maxim Cournoyer <maxim.cournoyer@HIDDEN>
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.1 (/)

* gnu/services/web.scm (<mumi-configuration>)[data-directory, rsync-remote,
rsync-flags]: New fields.
(%mumi-worker-log): Delete variable.
(%mumi-rsync-and-index-log): New variable.
(mumi-rsync-and-index-gexp): New function.
(mumi-shepherd-services): Remove mumi-worker service. Add mumi-rsync-and-index
service.
(mumi-service-type): Remove default value.
* doc/guix.texi (Web Services)[mumi]: Document data-directory, rsync-remote
and rsync-flags fields.

Co-authored-by: Maxim Cournoyer <maxim.cournoyer@HIDDEN>
---
 doc/guix.texi        |  9 +++++++
 gnu/services/web.scm | 57 ++++++++++++++++++++++++++++++++------------
 2 files changed, 51 insertions(+), 15 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 12f155e912..b6c0e64a53 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -33999,6 +33999,15 @@ Web Services
 @item @code{mumi} (default: @code{mumi})
 The Mumi package to use.
 
+@item @code{data-directory} (default: @file{"/var/mumi/data"})
+Data directory to store Debbugs data from upstream Debbugs instance.
+
+@item @code{rsync-remote}
+Remote rsync path from which to download Debbugs data.
+
+@item @code{rsync-flags} (default: @code{'()})
+Additional flags to pass to @command{rsync}.
+
 @item @code{mailer?} (default: @code{#true})
 Whether to enable or disable the mailer component.
 
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index f8cf06fb48..eea9a19426 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -18,6 +18,7 @@
 ;;; Copyright © 2023 Bruno Victal <mirai@HIDDEN>
 ;;; Copyright © 2023 Miguel Ángel Moreno <mail@HIDDEN>
 ;;; Copyright © 2024 Leo Nikkilä <hello@HIDDEN>
+;;; Copyright © 2025 Maxim Cournoyer <maxim.cournoyer@HIDDEN>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -51,6 +52,7 @@ (define-module (gnu services web)
   #:use-module (gnu packages php)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-web)
+  #:use-module (gnu packages rsync)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages logging)
@@ -295,6 +297,9 @@ (define-module (gnu services web)
             mumi-configuration
             mumi-configuration?
             mumi-configuration-mumi
+            mumi-configuration-data-directory
+            mumi-configuration-rsync-remote
+            mumi-configuration-rsync-flags
             mumi-configuration-mailer?
             mumi-configuration-sender
             mumi-configuration-smtp
@@ -2033,6 +2038,11 @@ (define-record-type* <mumi-configuration>
   mumi-configuration make-mumi-configuration
   mumi-configuration?
   (mumi    mumi-configuration-mumi (default mumi))
+  (data-directory mumi-configuration-data-directory
+                  (default "/var/mumi/data"))
+  (rsync-remote mumi-configuration-rsync-remote)
+  (rsync-flags mumi-configuration-rsync-flags
+               (default '()))
   (mailer? mumi-configuration-mailer? (default #t))
   (sender  mumi-configuration-sender (default #f))
   (smtp    mumi-configuration-smtp (default #f))
@@ -2080,7 +2090,7 @@ (define %mumi-log "/var/log/mumi.log")
 
 (define %mumi-mailer-log "/var/log/mumi.mailer.log")
 
-(define %mumi-worker-log "/var/log/mumi.worker.log")
+(define %mumi-rsync-and-index-log "/var/log/mumi.rsync-and-index.log")
 
 (define mumi-package-configuration->alist
   (match-record-lambda <mumi-package-configuration>
@@ -2118,6 +2128,23 @@ (define mumi-config-file
                                           packages)))
                               <>))))))
 
+(define (mumi-rsync-and-index-gexp config)
+  (match-record config <mumi-configuration>
+    (data-directory rsync-remote rsync-flags)
+    (with-imported-modules '((guix build utils))
+      #~(begin
+          (use-modules (guix build utils))
+
+          (invoke #$(file-append rsync "/bin/rsync")
+                  "--delete" "--archive" "--verbose"
+                  "--timeout" "120"
+                  #$@rsync-flags
+                  #$rsync-remote
+                  #$data-directory)
+          (invoke #$(file-append mumi "/bin/mumi") "fetch"
+                  (string-append "--config="
+                                 #$(mumi-config-file config)))))))
+
 (define (mumi-shepherd-services config)
   (define environment
     #~(list "LC_ALL=en_US.utf8"
@@ -2140,17 +2167,19 @@ (define (mumi-shepherd-services config)
                       #:log-file #$%mumi-log))
             (stop #~(make-kill-destructor)))
            (shepherd-service
-            (provision '(mumi-worker))
-            (documentation "Mumi bug-tracking web interface database worker.")
-            (requirement '(user-processes networking))
-            (start #~(make-forkexec-constructor
-                      `(#$(file-append mumi "/bin/mumi") "worker"
-                        ,(string-append "--config="
-                                        #$(mumi-config-file config)))
-                      #:environment-variables #$environment
-                      #:user "mumi" #:group "mumi"
-                      #:log-file #$%mumi-worker-log))
-            (stop #~(make-kill-destructor)))
+            (provision '(mumi-rsync-and-index))
+            (modules '((shepherd service timer)))
+            (start #~(make-timer-constructor
+                      (calendar-event)
+                      (command
+                       (program-file "mumi-rsync-and-index"
+                                     (mumi-rsync-and-index-gexp config)))
+                      #:log-file #$%mumi-rsync-and-index-log
+                      #:max-duration (* 60 60)
+                      #:wait-for-termination? #t))
+            (stop #~(make-timer-destructor))
+            (actions (list shepherd-trigger-action))
+            (documentation "Rsync and index the GNU Debbugs data"))
            (shepherd-service
             (provision '(mumi-mailer))
             (documentation "Mumi bug-tracking web interface mailer.")
@@ -2181,9 +2210,7 @@ (define mumi-service-type
           (service-extension shepherd-root-service-type
                              mumi-shepherd-services)))
    (description
-    "Run Mumi, a Web interface to the Debbugs bug-tracking server.")
-   (default-value
-     (mumi-configuration))))
+    "Run Mumi, a Web interface to the Debbugs bug-tracking server.")))
 
 (define %default-gmnisrv-config-file
   (plain-file "gmnisrv.ini" "

base-commit: ada14197fb465c1c90efbc450308c14f077ff167
-- 
2.49.0





Acknowledgement sent to Arun Isaac <arunisaac@HIDDEN>:
New bug report received and forwarded. Copy sent to ludo@HIDDEN, maxim.cournoyer@HIDDEN, guix-patches@HIDDEN. Full text available.
Report forwarded to ludo@HIDDEN, maxim.cournoyer@HIDDEN, guix-patches@HIDDEN:
bug#77585; Package guix-patches. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Wed, 23 Apr 2025 02:30:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.