summaryrefslogtreecommitdiff
path: root/gnu/services
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2022-06-23 12:38:37 +0100
committerChristopher Baines <mail@cbaines.net>2022-07-01 09:45:28 +0100
commitb5c6062bcec9530a9c4044a1bd1091fdebf9bc74 (patch)
tree5c8e017bbc00a4e000e72537b1d86c1486268420 /gnu/services
parent9a2a77b6ada212e5c47d0e9fe8446130ba632afe (diff)
services: nginx: Add support for extra content in upstream blocks.
I'm looking at this as I'd like to use the keepalive functionality. * gnu/services/web.scm (nginx-upstream-configuration-extra-content): New procedure. (emit-nginx-upstream-config): Include the extra-content if applicable. * doc/guix.texi (NGINX): Document this.
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/web.scm14
1 files changed, 13 insertions, 1 deletions
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index 4f06d4e0bbc..4434fecf02c 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -120,6 +120,7 @@
120 nginx-upstream-configuration? 120 nginx-upstream-configuration?
121 nginx-upstream-configuration-name 121 nginx-upstream-configuration-name
122 nginx-upstream-configuration-servers 122 nginx-upstream-configuration-servers
123 nginx-upstream-configuration-extra-content
123 124
124 nginx-location-configuration 125 nginx-location-configuration
125 nginx-location-configuration? 126 nginx-location-configuration?
@@ -517,7 +518,9 @@
517 nginx-upstream-configuration make-nginx-upstream-configuration 518 nginx-upstream-configuration make-nginx-upstream-configuration
518 nginx-upstream-configuration? 519 nginx-upstream-configuration?
519 (name nginx-upstream-configuration-name) 520 (name nginx-upstream-configuration-name)
520 (servers nginx-upstream-configuration-servers)) 521 (servers nginx-upstream-configuration-servers)
522 (extra-content nginx-upstream-configuration-extra-content
523 (default '())))
521 524
522(define-record-type* <nginx-location-configuration> 525(define-record-type* <nginx-location-configuration>
523 nginx-location-configuration make-nginx-location-configuration 526 nginx-location-configuration make-nginx-location-configuration
@@ -643,6 +646,15 @@ of index files."
643 (map (lambda (server) 646 (map (lambda (server)
644 (simple-format #f " server ~A;\n" server)) 647 (simple-format #f " server ~A;\n" server))
645 (nginx-upstream-configuration-servers upstream)) 648 (nginx-upstream-configuration-servers upstream))
649 (let ((extra-content
650 (nginx-upstream-configuration-extra-content upstream)))
651 (if (and extra-content (not (null? extra-content)))
652 (cons
653 "\n"
654 (map (lambda (line)
655 (simple-format #f " ~A\n" line))
656 (flatten extra-content)))
657 '()))
646 " }\n")) 658 " }\n"))
647 659
648(define (flatten . lst) 660(define (flatten . lst)