[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/04: services: rottlog: Make extensible.
From: |
Ludovic Courtès |
Subject: |
02/04: services: rottlog: Make extensible. |
Date: |
Mon, 12 Jun 2017 17:34:22 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit 254ea3f945e8bc44f8c3a4159302f24f4fe5f216
Author: Ludovic Courtès <address@hidden>
Date: Thu Jun 8 20:23:08 2017 +0200
services: rottlog: Make extensible.
* gnu/services/admin.scm (rottlog-service-type)[compose, extend]: New
fields.
* doc/guix.texi (Log Rotation): Mention extension.
---
doc/guix.texi | 3 +++
gnu/services/admin.scm | 6 ++++++
2 files changed, 9 insertions(+)
diff --git a/doc/guix.texi b/doc/guix.texi
index b8675bd..ffd2028 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -9561,6 +9561,9 @@ with the default settings, for commonly encountered log
files.
This is the type of the Rottlog service, whose value is a
@code{rottlog-configuration} object.
+Other services can extend this one with new @code{log-rotation} objects
+(see below), thereby augmenting the set of files to be rotated.
+
This service type can define mcron jobs (@pxref{Scheduled Job
Execution}) to run the rottlog service.
@end defvr
diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm
index 99f3b1d..b9e3fa7 100644
--- a/gnu/services/admin.scm
+++ b/gnu/services/admin.scm
@@ -164,6 +164,12 @@ for ROTATION."
;; the documentation.
(service-extension profile-service-type
(compose list rottlog-rottlog))))
+ (compose concatenate)
+ (extend (lambda (config rotations)
+ (rottlog-configuration
+ (inherit config)
+ (rotations (append (rottlog-rotations config)
+ rotations)))))
(default-value (rottlog-configuration))))
;;; admin.scm ends here