From patchwork Sat Mar 15 21:37:20 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 40220 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 9D4C127BBE9; Sat, 15 Mar 2025 21:39:28 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-7.6 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 7BFA727BBE2 for ; Sat, 15 Mar 2025 21:39:28 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ttZDv-0004zo-V1; Sat, 15 Mar 2025 17:39:16 -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 ) id 1ttZDn-0004vE-9g for guix-patches@gnu.org; Sat, 15 Mar 2025 17:39:07 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1ttZDm-0002nB-Ol for guix-patches@gnu.org; Sat, 15 Mar 2025 17:39:06 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:References:In-Reply-To:Date:From:To:Subject; bh=kGF3ySIRxAtAsDKeidexjYNbV1CuYNkwsh7fxqP0cqs=; b=rFAxZ9d62BuQpPReLFgHXggEjJxl2kEigEbvH9XDaCRKD7oD8INSTYb/DWRK+tLw0aOuW/S7+mSM8O0v6M38DZ0AwuSMy32ORaQXyNT7aKzIQq0BPh69b9OgEsD6Q5TcRzPjpP2iPZ/sgsclKze8ZbPSit1LuVzvDptsXikP6LwzGdq/iE1DkCCKJcptVcmBg1ZHkZ5j/ddZOBkPSaem6yfGsXmF12tv/WmptlmWBCMjUZ1xcXh5lk/o07exwUFvFiuTuShbORyeRASgh6mDZ+//WbzmHrrqh/Kc5hY8VBV35gIzsZECr+xQn1Z0Y50d9iPnSpNnsaq0kcbRC6PKVQ==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ttZDm-0004Vv-IB for guix-patches@gnu.org; Sat, 15 Mar 2025 17:39:06 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#77041] [PATCH 14/16] services: virtual-build-machine: Turn GC job into a Shepherd timer. Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 15 Mar 2025 21:39:06 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 77041 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 77041@debbugs.gnu.org Cc: Ludovic =?utf-8?q?Court=C3=A8s?= Received: via spool by 77041-submit@debbugs.gnu.org id=B77041.174207473917260 (code B ref 77041); Sat, 15 Mar 2025 21:39:06 +0000 Received: (at 77041) by debbugs.gnu.org; 15 Mar 2025 21:38:59 +0000 Received: from localhost ([127.0.0.1]:43865 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ttZDe-0004UD-Cp for submit@debbugs.gnu.org; Sat, 15 Mar 2025 17:38:58 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50186) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1ttZD0-0004Od-49 for 77041@debbugs.gnu.org; Sat, 15 Mar 2025 17:38:20 -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 ) id 1ttZCu-0002io-HN; Sat, 15 Mar 2025 17:38:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:References:In-Reply-To:Date:Subject:To: From; bh=kGF3ySIRxAtAsDKeidexjYNbV1CuYNkwsh7fxqP0cqs=; b=HcI/J+sROmGCnhRGUAsA QeHa1wB6/90UWzE254XF/VgYRrNPhm7HchtIba7kHu+iwYMScGuzKrTq/2Y8e58cQf4yjuM9ygSdg I6YxapXWZYlEwlA/icYBSCbMLD8uaJCnXtarNAR1+2pwnWIjiHSkb2jLNjKEh6989kMbMbQ4pZpb7 v/y/20JJznCtVVk3b8pWLh7/4RMKt0NAoXqZ21T9QuERZV4K9mMCZ6fdC/tNohEEfDG9+FBpJIKSk zaI5tsl/nOAIng6kHDfStTsMv4v7c2aBcukFAySp5wOpOZOSmmaf0LiAiomhc3cA2WJQM7mi6JafI d7t3z3SIBg7Gqw==; From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Sat, 15 Mar 2025 22:37:20 +0100 Message-ID: <134eeae955e072d41a212d5b0a41c43fed4edd4b.1742073920.git.ludo@gnu.org> X-Mailer: git-send-email 2.48.1 In-Reply-To: References: MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/services/virtualization.scm (gc-service-type): New variable. (%virtual-build-machine-operating-system): Use instead of extending ‘mcron-service-type’. Change-Id: I56d7f9293f582269e5a34d91bf4f3edddfa844e0 --- gnu/services/virtualization.scm | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index 796b9bf86f..171915d62d 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -40,7 +40,6 @@ (define-module (gnu services virtualization) #:use-module (gnu services base) #:use-module (gnu services configuration) #:use-module (gnu services dbus) - #:use-module (gnu services mcron) #:use-module (gnu services shepherd) #:use-module (gnu services ssh) #:use-module (gnu services) @@ -1304,6 +1303,23 @@ (define %system-log-message-destination (else '("/dev/console"))))) +(define gc-service-type ;TODO: Factorize. + (shepherd-service-type + 'garbage-collection + (lambda _ + (shepherd-service + (provision '(gc)) + (requirement '(user-processes guix-daemon)) + (start #~(make-timer-constructor + (calendar-event #:minutes '(12)) + (command + '("/run/current-system/profile/bin/guix" "gc" "-F2G")) + #:wait-for-termination? #t)) + (stop #~(make-timer-constructor)) + (actions (list shepherd-trigger-action)))) + #t + (description "Periodically collect garbage."))) + (define %virtual-build-machine-operating-system (operating-system (host-name "build-machine") @@ -1336,9 +1352,7 @@ (define %virtual-build-machine-operating-system (openssh openssh-sans-x))) ;; Run GC once per hour. - (simple-service 'perdiodic-gc mcron-service-type - (list #~(job "12 * * * *" - "guix gc -F 2G"))) + (service gc-service-type) (modify-services %base-services ;; By default, the secret service introduces a