summaryrefslogtreecommitdiff
path: root/gnu/services/databases.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2018-08-25 16:44:07 +0200
committerMarius Bakke <mbakke@fastmail.com>2018-08-25 16:44:07 +0200
commit839167ff9d74fc490b32f6a197591964f73b65e5 (patch)
treed193bfad7c9ef5597c5cd7d2ea25fd007d01f88a /gnu/services/databases.scm
parent27c1df05a866b639a61e16d48b3f2da8fa5eb767 (diff)
parent030c912616c8ee1595218e304460041bcb4f1ceb (diff)
downloadguix-patches-839167ff9d74fc490b32f6a197591964f73b65e5.tar
guix-patches-839167ff9d74fc490b32f6a197591964f73b65e5.tar.gz
Merge branch 'staging' into core-updates
Diffstat (limited to 'gnu/services/databases.scm')
-rw-r--r--gnu/services/databases.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm
index 8ae248ebe4..aff78a0566 100644
--- a/gnu/services/databases.scm
+++ b/gnu/services/databases.scm
@@ -221,13 +221,20 @@ host all all ::1/128 trust"))
(setuid (passwd:uid user))
(execl pg_ctl pg_ctl "-D" #$data-directory "-o" options
mode)))))))
+ (pid-file (in-vicinity data-directory "postmaster.pid"))
(action (lambda args
#~(lambda _
- (invoke #$pg_ctl-wrapper #$@args)))))
+ (invoke #$pg_ctl-wrapper #$@args)
+ (match '#$args
+ (("start")
+ (call-with-input-file #$pid-file read))
+ (_ #t))))))
(list (shepherd-service
(provision '(postgres))
(documentation "Run the PostgreSQL daemon.")
(requirement '(user-processes loopback syslogd))
+ (modules `((ice-9 match)
+ ,@%default-modules))
(start (action "start"))
(stop (action "stop"))))))))