Skip to content
Snippets Groups Projects
Commit f9f5bbab authored by Allen Gilliland's avatar Allen Gilliland
Browse files

create an `:mb-run-mode` config property which defaults to "prod" and add...

create an `:mb-run-mode` config property which defaults to "prod" and add couple predicate functions in our config ns for checking `is-prod?` and `is-test?`.  then update our event listener startup calls and wrap them with `(when (config/is-prod?) ...)` so that we only start them up when we intend to run the app for real.  lastly, update our environment for our expectations unit tests so that :mb-run-mode is "test" and thus our event processing listeners are not started for unit tests.
parent aa631ef3
No related branches found
No related tags found
No related merge requests found
......@@ -86,7 +86,8 @@
:expectations {:global-vars {*warn-on-reflection* false}
:injections [(require 'metabase.test-setup)]
:resource-paths ["test_resources"]
:env {:mb-test-setting-1 "ABCDEFG"}
:env {:mb-test-setting-1 "ABCDEFG"
:mb-run-mode "test"}
:jvm-opts ["-Dmb.db.in.memory=true"
"-Dmb.jetty.join=false"
"-Dmb.jetty.port=3010"
......
......@@ -6,6 +6,7 @@
(def ^:const app-defaults
"Global application defaults"
{;; Database Configuration (general options? dburl?)
:mb-run-mode "prod"
:mb-db-type "h2"
;:mb-db-dbname "postgres"
;:mb-db-host "localhost"
......@@ -62,3 +63,6 @@
(m/filter-keys (fn [k] (re-matches prefix-regex (str k))) app-defaults)
(m/filter-keys (fn [k] (re-matches prefix-regex (str k))) environ/env))
(m/map-keys (fn [k] (let [kstr (str k)] (keyword (subs kstr (+ 1 (count prefix))))))))))
(defn ^Boolean is-prod? [] (= :prod (config-kw :mb-run-mode)))
(defn ^Boolean is-test? [] (= :test (config-kw :mb-run-mode)))
......@@ -2,6 +2,7 @@
(:require [clojure.core.async :as async]
[clojure.tools.logging :as log]
[metabase.db :as db]
[metabase.config :as config]
[metabase.events :as events]
(metabase.models [activity :refer [Activity]]
[dashboard :refer [Dashboard]]
......@@ -122,4 +123,6 @@
;; this is what actually kicks off our listener for events
(events/start-event-listener activity-feed-topics activity-feed-channel process-activity-event)
(when (config/is-prod?)
(log/info "Starting activity-feed events listener")
(events/start-event-listener activity-feed-topics activity-feed-channel process-activity-event))
(ns metabase.events.revision
(:require [clojure.core.async :as async]
[clojure.tools.logging :as log]
[metabase.config :as config]
[metabase.events :as events]
(metabase.models [card :refer [Card]]
[dashboard :refer [Dashboard]]
......@@ -54,4 +55,6 @@
;; this is what actually kicks off our listener for events
(events/start-event-listener revisions-topics revisions-channel process-revision-event)
(when (config/is-prod?)
(log/info "Starting revision events listener")
(events/start-event-listener revisions-topics revisions-channel process-revision-event))
(ns metabase.events.view-log
(:require [clojure.core.async :as async]
[clojure.tools.logging :as log]
[metabase.config :as config]
[metabase.db :as db]
[metabase.events :as events]
[metabase.models.view-log :refer [ViewLog]]))
......@@ -47,4 +48,6 @@
;; this is what actually kicks off our listener for events
(events/start-event-listener view-counts-topics view-counts-channel process-view-count-event)
(when (config/is-prod?)
(log/info "Starting view-log events listener")
(events/start-event-listener view-counts-topics view-counts-channel process-view-count-event))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment