-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbb.edn
29 lines (27 loc) · 1.54 KB
/
bb.edn
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
{:tasks
{
:init (do
(defn remote-server-name []
(first *command-line-args*)))
build:importer (shell {:dir "obmimport"} "lein uberjar")
build:server (shell {:dir "obmserver"} "lein uberjar")
build:web (shell {:dir "obmweb"} "npm run release")
-build:all {:depends [build:importer build:server build:web]}
build:all {:task (run '-build:all {:parallel true})}
deploy:importer {:depends [build:importer]
:task (shell {:dir "obmimport"}
(format "scp target/uberjar/obmimport-0.1.0-SNAPSHOT-standalone.jar %s:work/obm/" (remote-server-name)))}
deploy:server {:depends [build:server]
:task (do
(shell (format "ssh %s 'systemctl stop obmserver'" (remote-server-name)))
(shell {:dir "obmserver"}
(format "scp target/uberjar/obmserver-0.1.0-SNAPSHOT-standalone.jar %s:/opt/obm/obmserver.jar" (remote-server-name)))
(shell {:dir "obmserver"}
(format "scp misc/obmserver.service %s:/usr/lib/systemd/system/obmserver.service" (remote-server-name)))
(shell (format "ssh %s 'systemctl daemon-reload'" (remote-server-name)))
(shell (format "ssh %s 'systemctl start obmserver'" (remote-server-name))))}
deploy:web {:depends [build:web]
:task (shell {:dir "obmweb"}
(format "rsync -azv resources/public/ %s:/opt/obm/public/" (remote-server-name)))}
}
}