[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#28024] [PATCH 4/5] services: Update the Tailon service for Tailon 1
From: |
Christopher Baines |
Subject: |
[bug#28024] [PATCH 4/5] services: Update the Tailon service for Tailon 1.3.0. |
Date: |
Wed, 9 Aug 2017 09:06:03 +0100 |
Tailon 1.3.0 (upgraded from 1.1.1) adds support for HTTP authentication.
* gnu/services/admin.scm (<tailon-configuration-file>): Add http-auth and
users configuration values.
(tailon-configuration-file-http-auth, tailon-configuration-file-users): New
procedures.
(tailon-configuration-file-compiler): Add support for the http-auth and
users configuration options.
* doc/guix.texi (Monitoring Services): Document authentication for Tailon.
---
doc/guix.texi | 18 ++++++++++++++++++
gnu/services/admin.scm | 24 +++++++++++++++++++-----
2 files changed, 37 insertions(+), 5 deletions(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index e4903be83..c7787e4a8 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -13774,6 +13774,24 @@ Initial line wrapping state in the web interface. Set
to @code{#t} to
initially wrap lines (the default), or to @code{#f} to initially not
wrap lines.
address@hidden @code{http-auth} (default: @code{#f})
+HTTP authentication type to use. Set to @code{#f} to disable
+authentication (the default). Supported values are @code{"digest"} or
address@hidden"basic"}.
+
address@hidden @code{users} (default: @code{#f})
+If HTTP authentication is enabled (see @code{http-auth}), access will be
+restricted to the credentials provided here. To configure users, use a
+list of pairs, where the first element of the pair is the username, and
+the 2nd element of the pair is the password.
+
address@hidden
+(tailon-configuration-file
+ (http-auth "basic")
+ (users '(("user1" . "password1")
+ ("user2" . "password2"))))
address@hidden example
+
@end table
@end deftp
diff --git a/gnu/services/admin.scm b/gnu/services/admin.scm
index 19169427c..e24aebae2 100644
--- a/gnu/services/admin.scm
+++ b/gnu/services/admin.scm
@@ -59,8 +59,8 @@
tailon-configuration-file-tail-lines
tailon-configuration-file-allowed-commands
tailon-configuration-file-debug?
- tailon-configuration-file-wrap-lines
-
+ tailon-configuration-file-http-auth
+ tailon-configuration-file-users
<tailon-configuration>
tailon-configuration
@@ -224,7 +224,11 @@ for ROTATION."
(debug? tailon-configuration-file-debug?
(default #f))
(wrap-lines tailon-configuration-file-wrap-lines
- (default #t)))
+ (default #t))
+ (http-auth tailon-configuration-file-http-auth
+ (default #f))
+ (users tailon-configuration-file-users
+ (default #f)))
(define (tailon-configuration-files-string files)
(string-append
@@ -254,7 +258,7 @@ for ROTATION."
(($ <tailon-configuration-file> files bind relative-root
allow-transfers? follow-names?
tail-lines allowed-commands debug?
- wrap-lines)
+ wrap-lines http-auth users)
(text-file
"tailon-config.yaml"
(string-concatenate
@@ -273,7 +277,17 @@ for ROTATION."
(string-join allowed-commands ", ")
"]"))
,@(if debug? '(("debug" . "true")) '())
- ("wrap-lines" . ,(if wrap-lines "true" "false")))))))))
+ ("wrap-lines" . ,(if wrap-lines "true" "false"))
+ ("http-auth" . ,http-auth)
+ ("users" . ,(if users
+ (string-concatenate
+ (cons "\n"
+ (map (match-lambda
+ ((user . pass)
+ (string-append
+ " " user ":" pass)))
+ users)))
+ #f)))))))))
(define-record-type* <tailon-configuration>
tailon-configuration make-tailon-configuration
--
2.14.0