/
launch.clj
40 lines (33 loc) · 934 Bytes
/
launch.clj
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
(ns re-mote.launch
(:require
[re-mote.persist.es :refer (types)]
[re-mote.zero.cycle :as zero]
[taoensso.timbre :refer (refer-timbre)]
[re-mote.api.server :as web]
[re-share.components.core :refer (start-all stop-all setup-all)]
[re-share.components.elastic :as es]
[re-mote.repl :as repl]
[re-share.config :as conf]
[re-share.zero.keys :as k]
[re-share.schedule :as sc]))
(refer-timbre)
(defn build-components [] {:es (es/instance types :re-mote) :zero (zero/instance) :web (web/instance)})
(defn setup []
(let [components (build-components)]
(k/create-server-keys ".curve")
(conf/load (fn [_] {}))
(repl/setup)
(setup-all components)
components))
(defn start [components]
(conf/load (fn [_] {}))
(start-all components)
components)
(defn stop [components]
(sc/halt!)
(stop-all components)
components)
(defn -main [& args])
(comment
(stop nil)
(start nil))