summaryrefslogtreecommitdiff
path: root/px/services/databases.scm
diff options
context:
space:
mode:
authorFranz Geffke <franz@pantherx.org>2023-11-06 20:08:14 +0000
committerFranz Geffke <franz@pantherx.org>2023-11-06 20:08:14 +0000
commit47b4c9c854915df93893dbaa993accfacf9027fe (patch)
tree4f9b1742d63fcfbc94cc6b8d84f76c4d00c3a0b7 /px/services/databases.scm
parent0b426d7b7ed8e176bf464ef9e0683f74a6c9d20f (diff)
rewrite: apply guix-reference formatting; cleanup some module imports
Diffstat (limited to 'px/services/databases.scm')
-rw-r--r--px/services/databases.scm105
1 files changed, 48 insertions, 57 deletions
diff --git a/px/services/databases.scm b/px/services/databases.scm
index aa90f20..6cf459e 100644
--- a/px/services/databases.scm
+++ b/px/services/databases.scm
@@ -1,6 +1,5 @@
;;; Databases service definitions for PantherX
-;;; Author: Reza Alizadeh Majd (r.majd@pantherx.org)
-
+;;; Reza Alizadeh Majd (r.majd@pantherx.org)
(define-module (px services databases)
#:use-module (gnu services)
@@ -13,14 +12,13 @@
#:use-module (px packages databases)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
- #:export (mongodb-configuration
+ #:export (mongodb-configuration
mongodb-configuration?
mongodb-configuration-mongodb
mongodb-configuration-config-file
mongodb-configuration-data-directory
mongodb-service-type))
-
;;;
;;; MongoDB
;;;
@@ -46,37 +44,35 @@
;;; @end table
;;; @end deftp
-
(define %default-mongodb-configuration-file
- (plain-file
- "mongodb.yaml"
- "# GNU Guix: MongoDB default configuration file
+ (plain-file "mongodb.yaml" "# GNU Guix: MongoDB default configuration file
processManagement:
pidFilePath: /var/run/mongodb/pid
storage:
dbPath: /var/lib/mongodb
"))
-
-(define-record-type* <mongodb-configuration>
- mongodb-configuration make-mongodb-configuration
+(define-record-type* <mongodb-configuration> mongodb-configuration
+ make-mongodb-configuration
mongodb-configuration?
- (mongodb mongodb-configuration-mongodb
- (default mongodb))
- (config-file mongodb-configuration-config-file
- (default %default-mongodb-configuration-file))
- (data-directory mongodb-configuration-data-directory
- (default "/var/lib/mongodb")))
+ (mongodb mongodb-configuration-mongodb
+ (default mongodb))
+ (config-file mongodb-configuration-config-file
+ (default %default-mongodb-configuration-file))
+ (data-directory mongodb-configuration-data-directory
+ (default "/var/lib/mongodb")))
(define %mongodb-accounts
- (list (user-group (name "mongodb") (system? #t))
+ (list (user-group
+ (name "mongodb")
+ (system? #t))
(user-account
- (name "mongodb")
- (group "mongodb")
- (system? #t)
- (comment "Mongodb server user")
- (home-directory "/var/lib/mongodb")
- (shell (file-append shadow "/sbin/nologin")))))
+ (name "mongodb")
+ (group "mongodb")
+ (system? #t)
+ (comment "Mongodb server user")
+ (home-directory "/var/lib/mongodb")
+ (shell (file-append shadow "/sbin/nologin")))))
(define mongodb-activation
(match-lambda
@@ -84,45 +80,40 @@ storage:
#~(begin
(use-modules (guix build utils))
(let ((user (getpwnam "mongodb")))
- (for-each
- (lambda (directory)
- (mkdir-p directory)
- (chown directory
- (passwd:uid user) (passwd:gid user)))
- '("/var/run/mongodb" #$data-directory)))))))
+ (for-each (lambda (directory)
+ (mkdir-p directory)
+ (chown directory
+ (passwd:uid user)
+ (passwd:gid user)))
+ '("/var/run/mongodb" #$data-directory)))))))
(define mongodb-shepherd-service
(match-lambda
(($ <mongodb-configuration> mongodb config-file data-directory)
- (shepherd-service
- (provision '(mongodb))
- (documentation "Run the Mongodb daemon.")
- (requirement '(user-processes loopback))
- (start #~(make-forkexec-constructor
- `(,(string-append #$mongodb "/bin/mongod")
- "--config"
- ,#$config-file)
- #:user "mongodb"
- #:group "mongodb"
- #:pid-file "/var/run/mongodb/pid"
- #:log-file "/var/log/mongodb.log"))
- (stop #~(make-kill-destructor))))))
+ (shepherd-service (provision '(mongodb))
+ (documentation "Run the Mongodb daemon.")
+ (requirement '(user-processes loopback))
+ (start #~(make-forkexec-constructor `(,(string-append #$mongodb
+ "/bin/mongod")
+ "--config"
+ ,#$config-file)
+ #:user "mongodb"
+ #:group "mongodb"
+ #:pid-file "/var/run/mongodb/pid"
+ #:log-file "/var/log/mongodb.log"))
+ (stop #~(make-kill-destructor))))))
(define mongodb-service-type
- (service-type
- (name 'mongodb)
- (description "Run the MongoDB document database server.")
- (extensions
- (list (service-extension shepherd-root-service-type
- (compose list
- mongodb-shepherd-service))
- (service-extension activation-service-type
- mongodb-activation)
- (service-extension account-service-type
- (const %mongodb-accounts))))
- (default-value
- (mongodb-configuration))))
-
+ (service-type (name 'mongodb)
+ (description "Run the MongoDB document database server.")
+ (extensions (list (service-extension
+ shepherd-root-service-type
+ (compose list mongodb-shepherd-service))
+ (service-extension activation-service-type
+ mongodb-activation)
+ (service-extension account-service-type
+ (const %mongodb-accounts))))
+ (default-value (mongodb-configuration))))
(use-modules (gnu system)
(gnu bootloader)