I am trying to use environ to access environment variables specified in my project.clj :dev profile. This looks like a nice way to set up different configuration options, but I can't seem to get it to work. My project.clj entry looks like this:
:profiles
{:dev {:dependencies [[javax.servlet/servlet-api "2.5"]
[ring-mock "0.1.5"]]
:env {:foo "FOO" :bar "BAR"}}}
If I run lein repl
and require then enter (with in-ns
) a namespace from my project, environ.core/env
just returns nil:
(environ.core/env :foo)
nil
Adding an :env entry to the :user profile in .lein/profiles.clj also doesn't work. What am I doing wrong?
OK, it was a case of reading the docs more thoroughly. :) To access environment variables specified in the project map you need the lein-environ plugin. Add it like this:
:plugins [[lein-environ "0.4.0"]]
That worked. It's easy to miss that in the docs though.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With