From 6ddf31cfbb963faa61f078538e5890d6cb656467 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Thu, 16 Apr 2020 21:42:26 +0100 Subject: Implement a couple of basic hooks This allows configurable code to be executed when builds succeed or fail. --- guix-build-coordinator/hooks.scm | 42 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 guix-build-coordinator/hooks.scm (limited to 'guix-build-coordinator/hooks.scm') diff --git a/guix-build-coordinator/hooks.scm b/guix-build-coordinator/hooks.scm new file mode 100644 index 0000000..ed0b890 --- /dev/null +++ b/guix-build-coordinator/hooks.scm @@ -0,0 +1,42 @@ +;;; Guix Build Coordinator +;;; +;;; Copyright © 2020 Christopher Baines +;;; +;;; This file is part of the guix-build-coordinator. +;;; +;;; The Guix Build Coordinator is free software; you can redistribute +;;; it and/or modify it under the terms of the GNU General Public +;;; License as published by the Free Software Foundation; either +;;; version 3 of the License, or (at your option) any later version. +;;; +;;; The Guix Build Coordinator is distributed in the hope that it will +;;; be useful, but WITHOUT ANY WARRANTY; without even the implied +;;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +;;; See the GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with the guix-data-service. If not, see +;;; . + +(define-module (guix-build-coordinator hooks) + #:use-module (guix-build-coordinator datastore) + #:export (default-build-success-hook + default-build-failure-hook)) + +(define (default-build-success-hook datastore build-id) + (let ((agent-id + (datastore-agent-for-build datastore build-id))) + (display + (simple-format #f + "build ~A succeeded (on agent ~A)\n" + build-id agent-id) + (current-error-port)))) + +(define* (default-build-failure-hook datastore build-id) + (let ((agent-id + (datastore-agent-for-build datastore build-id))) + (display + (simple-format #f + "build ~A failed (on agent ~A)\n" + build-id agent-id) + (current-error-port)))) -- cgit v1.2.3