From 0a5c74955363a84033b6ea90aa1b934b1122632f Mon Sep 17 00:00:00 2001 From: Tim Date: Tue, 4 Nov 2025 19:02:37 +0100 Subject: Fix reading ports from env variables --- src/dionysus/core.clj | 1 + src/dionysus/utils.clj | 8 ++++++++ src/dionysus/web/admin.clj | 9 ++++++--- src/dionysus/web/enduser.clj | 4 +++- 4 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 src/dionysus/utils.clj diff --git a/src/dionysus/core.clj b/src/dionysus/core.clj index f80d3f7..97105fa 100644 --- a/src/dionysus/core.clj +++ b/src/dionysus/core.clj @@ -4,6 +4,7 @@ (:gen-class)) (defn -main [& args] + (println "Starting things up...") (dspotify/start-token-watcher!) (dwadmin/start-server!)) #_(-main) diff --git a/src/dionysus/utils.clj b/src/dionysus/utils.clj new file mode 100644 index 0000000..6302ab0 --- /dev/null +++ b/src/dionysus/utils.clj @@ -0,0 +1,8 @@ +(ns dionysus.utils) + +(defn try-parse-int + ([s default] (try + (Integer/parseInt s) + (catch Exception _ + default))) + ([s] (try-parse-int s nil))) diff --git a/src/dionysus/web/admin.clj b/src/dionysus/web/admin.clj index 20c7409..28d8301 100644 --- a/src/dionysus/web/admin.clj +++ b/src/dionysus/web/admin.clj @@ -5,10 +5,11 @@ [dotenv :as env] [ring.middleware.params :as rmparams] [ring.middleware.session :as rmsessions] + [dionysus.utils :as dutils] [dionysus.web.admin.home :as dwahome] [dionysus.web.admin.home.blacklist :as dwahblacklist] - [dionysus.web.admin.home.server-settings :as dwahserver-settings])) + [dionysus.web.admin.home.server-settings :as dwahserver-settings])) (def ^:private routes [["/" {:get {:handler dwahome/handle}}] @@ -35,11 +36,13 @@ :redirect-uri "/callback" :landing-uri "/"}}) rmsessions/wrap-session - rmparams/wrap-params)) + rmparams/wrap-params + delay)) (def ^:private stop-fn (atom nil)) (defn start-server! [] (when (fn? @stop-fn) (@stop-fn)) - (reset! stop-fn (http-server/run-server handler {:port (or (env/env "ADMIN_PORT") 8081)}))) + (reset! stop-fn (http-server/run-server @handler {:port (-> (env/env "ADMIN_PORT") + (dutils/try-parse-int 8081))}))) #_(start-server!) diff --git a/src/dionysus/web/enduser.clj b/src/dionysus/web/enduser.clj index 90b661b..ab28749 100644 --- a/src/dionysus/web/enduser.clj +++ b/src/dionysus/web/enduser.clj @@ -2,6 +2,7 @@ (:require [dotenv :as env] [org.httpkit.server :as http-server] [reitit.ring :as rring] + [dionysus.utils :as dutils] [dionysus.web.enduser.home :as dwehome] [dionysus.web.enduser.home.search :as dwehsearch] @@ -26,7 +27,8 @@ (defn start-server! [] (when (server-runs?) (@stop-fn)) - (reset! stop-fn (http-server/run-server handler {:port (or (env/env "ENDUSER_PORT") 8080)}))) + (reset! stop-fn (http-server/run-server handler {:port (-> (env/env "ENDUSER_PORT") + (dutils/try-parse-int 8080))}))) #_(start-server!) (defn stop-server! [] -- cgit v1.2.3