Reputation: 4257
I am create a web application with duct
lein template.
Now I am looking at project.clj
to see how its works.
But I don't know if I undersant correcntly this particular part:
{:dev [:project/dev :profiles/dev]
:test [:project/test :profiles/test]
:uberjar {:aot :all}
:profiles/dev {}
:profiles/test {}
:project/dev {:dependencies [[duct/generate "0.6.1"]
[reloaded.repl "0.2.1"]
[org.clojure/tools.namespace "0.2.11"]
[org.clojure/tools.nrepl "0.2.12"]
[eftest "0.1.1"]
[kerodon "0.7.0"]]
:source-paths ["dev"]
:repl-options {:init-ns user}
:env {:port "3000"}}
For example:
Whats this [:project/dev :profiles/dev]
mean? and why I have a :dev
key and a :project/dev
key.
I know it is probably about profiles.clj
file. But I did don't really understand it right.
Maybe my question seems a little bit silly, but I hope I have been myself clear.
Upvotes: 2
Views: 109
Reputation: 4713
This is described in composite profiles:
Sometimes it is useful to define a profile as a combination of other profiles. To do this, just use a vector instead of a map as the profile value. This can be used to avoid duplication:
{:shared {:port 9229, :protocol "https"}
:qa [:shared {:servers ["qa.mycorp.com"]}]
:stage [:shared {:servers ["stage.mycorp.com"]}]
:production [:shared {:servers ["prod1.mycorp.com", "prod1.mycorp.com"]}]}
Upvotes: 2