summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/weepinbell/config.clj4
-rw-r--r--src/weepinbell/core.clj5
2 files changed, 4 insertions, 5 deletions
diff --git a/src/weepinbell/config.clj b/src/weepinbell/config.clj
index cd1c2c3..549139c 100644
--- a/src/weepinbell/config.clj
+++ b/src/weepinbell/config.clj
@@ -4,10 +4,10 @@
(:require [fast-edn.core :as edn]
[clojure.java.io :as io]))
-(defn load-config []
+(defn load-config [config-file]
(let [default-config (when-let [resource (io/resource "config.edn")]
(-> resource slurp edn/read-string))
- external-file (io/file "config.edn")
+ external-file (io/file config-file)
external-config (when (.exists external-file)
(-> external-file slurp edn/read-string))]
(merge default-config external-config)))
diff --git a/src/weepinbell/core.clj b/src/weepinbell/core.clj
index f97fffc..98d5d04 100644
--- a/src/weepinbell/core.clj
+++ b/src/weepinbell/core.clj
@@ -1,7 +1,6 @@
(ns weepinbell.core
"Main component that loads resources and start other components."
- (:require [clojure.spec.alpha :as s]
- [weepinbell.storage.spec]
+ (:require [weepinbell.storage.spec]
[weepinbell.config :refer [load-config]]
[weepinbell.webhook :as webhook]
[weepinbell.storage.edn-storage :as edn]
@@ -26,7 +25,7 @@
wmc (chan)
;; Weepinbell configuration,
;; loaded from config.edn and merged with defaults.
- config (load-config)
+ config (load-config (or (System/getenv "WEEPINBELL_CONFIG") "config.edn"))
;; Storage middle layer, a map of data-manipulating functions.
;; Supports various storage as long as the map conforms storage.spec.
store (edn/use-store (:data-path config))