blob: 400c6acf28760f15dd747c9c03428ffdba11e253 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
;;; genenetwork-machines --- Guix configuration for genenetwork machines
;;; Copyright © 2022–2024 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022–2024 Frederick M. Muriithi <fredmanglis@gmail.com>
;;;
;;; This file is part of genenetwork-machines.
;;;
;;; genenetwork-machines is free software: you can redistribute it
;;; and/or modify it under the terms of the GNU General Public License
;;; as published by the Free Software Foundation, either version 3 of
;;; the License, or (at your option) any later version.
;;;
;;; genenetwork-machines is distributed in the hope that it will be
;;; useful, but WITHOUT ANY WARRANTY; without even the implied
;;; warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
;;; See the GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with genenetwork-machines. If not, see
;;; <https://www.gnu.org/licenses/>.
(use-modules (gnu)
(genenetwork services genenetwork)
((gnu packages admin) #:select (shepherd))
(gn services databases)
(gnu services databases)
(forge acme)
(forge nginx)
(forge socket)
(gn-uploader))
(operating-system
(host-name "genenetwork-uploader")
(timezone "UTC")
(locale "en_US.utf8")
(bootloader (bootloader-configuration
(bootloader grub-bootloader)
(targets (list "/dev/sdX"))))
(file-systems %base-file-systems)
(users %base-user-accounts)
(sudoers-file
(mixed-text-file "sudoers"
"@include " %sudoers-specification
"\nacme ALL = NOPASSWD: " (file-append shepherd "/bin/herd") " restart nginx\n"))
(packages %base-packages)
(services (cons* (service virtuoso-service-type
(virtuoso-configuration
(server-port 10892)
(http-server-port 10893)))
(service forge-nginx-service-type
(forge-nginx-configuration
(http-listen (forge-ip-socket
(ip "0.0.0.0")
(port 10890)))
(https-listen (forge-ip-socket
(ip "0.0.0.0")
(port 10891)))))
(service acme-service-type
(acme-configuration
(email "arunisaac@systemreboot.net")))
(service genenetwork-service-type
(genenetwork-configuration
(server-name "staging.genenetwork.org")
(gn-auth-server-name "staging-auth.genenetwork.org")
(gn2-port 10894)
(gn3-port 10895)
(gn-auth-port 10896)
(sql-uri "mysql://webqtlout:webqtlout@127.0.0.1:3307/db_webqtl")
(auth-db "/export/data/genenetwork-sqlite/auth.db")
(xapian-db "/export/data/genenetwork-xapian")
(genotype-files "/export/data/genenetwork/genotype_files")
(sparql-endpoint "http://localhost:10893/sparql")
(gn3-data-directory "/export/data/uploader/genenetwork3")
(gn2-secrets "/etc/genenetwork/genenetwork2")
(gn3-secrets "/etc/genenetwork/genenetwork3/gn3-secrets.py")
(gn-auth-secrets "/etc/genenetwork/gn-auth")))
(service gn-uploader-service-type
(gn-uploader-configuration
(gn-uploader gn-uploader)
(server-name "staging-uploader.genenetwork.org")
(port 10897)
(secrets "/etc/genenetwork/gn-uploader/gn-uploader-secrets.py")
(sql-uri "mysql://webqtlout:webqtlout@127.0.0.1:3307/db_webqtl")
(data-directory "/export/data/uploader/gn-uploader")
(log-level "DEBUG")
(auth-server-url "https://staging-auth.genenetwork.org/")))
%base-services)))
|