forked from puppetlabs/puppetdb
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathproject.clj
93 lines (82 loc) · 4.17 KB
/
project.clj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
(require '[clojure.string :as s])
(use '[clojure.java.shell :only (sh)]
'[clojure.java.io :only (file)])
(def version-string
(memoize
(fn []
"Determine the version number using 'rake version -s'"
[]
(if (.exists (file "version"))
(s/trim (slurp "version"))
(let [command ["rake" "package:version" "-s"]
{:keys [exit out err]} (apply sh command)]
(if (zero? exit)
(s/trim out)
"0.0-dev-build"))))))
(def tk-version "0.3.4")
(def tk-jetty9-version "0.3.3")
(def ks-version "0.5.3")
(defproject puppetdb (version-string)
:description "Puppet-integrated catalog and fact storage"
;; Abort when version ranges or version conflicts are detected in
;; dependencies. Also supports :warn to simply emit warnings.
;; requires lein 2.2.0+.
:pedantic? :abort
:dependencies [[org.clojure/clojure "1.5.1"]
[cheshire "5.2.0"]
[org.clojure/core.match "0.2.0-rc5"]
[org.clojure/math.combinatorics "0.0.4"]
[org.clojure/tools.logging "0.2.6"]
[org.clojure/tools.nrepl "0.2.3"]
[puppetlabs/tools.namespace "0.2.4.1"]
[vimclojure/server "2.3.6" :exclusions [org.clojure/clojure]]
[clj-stacktrace "0.2.6"]
[metrics-clojure "0.7.0" :exclusions [org.clojure/clojure org.slf4j/slf4j-api]]
[clj-time "0.5.1"]
[org.clojure/java.jmx "0.2.0"]
;; Filesystem utilities
[fs "1.1.2"]
;; Version information
[trptcolin/versioneer "0.1.0"]
;; Job scheduling
[overtone/at-at "1.2.0"]
;; Nicer exception handling with try+/throw+
[slingshot "0.10.3"]
;; Database connectivity
[com.jolbox/bonecp "0.7.1.RELEASE" :exclusions [org.slf4j/slf4j-api]]
[org.clojure/java.jdbc "0.1.1"]
[org.hsqldb/hsqldb "2.2.8"]
[org.postgresql/postgresql "9.2-1003-jdbc4"]
[clojureql "1.0.3"]
;; MQ connectivity
[clamq/clamq-activemq "0.4" :exclusions [org.slf4j/slf4j-api]]
[org.apache.activemq/activemq-core "5.6.0" :exclusions [org.slf4j/slf4j-api org.fusesource.fuse-extra/fusemq-leveldb]]
;; bridge to allow some spring/activemq stuff to log over slf4j
[org.slf4j/jcl-over-slf4j "1.7.5"]
;; WebAPI support libraries.
[net.cgrand/moustache "1.1.0" :exclusions [ring/ring-core org.clojure/clojure]]
[clj-http "0.5.3"]
[ring/ring-core "1.2.1" :exclusions [javax.servlet/servlet-api]]
[org.apache.commons/commons-compress "1.4.1"]
[puppetlabs/kitchensink ~ks-version]
[puppetlabs/trapperkeeper ~tk-version]
[puppetlabs/trapperkeeper-webserver-jetty9 ~tk-jetty9-version]
[prismatic/schema "0.2.0"]
[org.clojure/tools.macro "0.1.5"]
[com.novemberain/pantomime "2.1.0"]]
;;The below test-selectors is basically using the PUPPETDB_DBTYPE
;;environment variable to be the test selector. The selector below
;;will always run a test, unless it has a meta value for that
;;dbtype, and that value is falsey, such as
;;(deftest ^{:postgres false} my-test-name...)
:test-selectors {:default (fn [test-var-meta]
(let [dbtype (keyword (or (System/getenv "PUPPETDB_DBTYPE")
"hsql"))]
(get test-var-meta dbtype true)))}
:profiles {:dev {:resource-paths ["test-resources"],
:dependencies [[ring-mock "0.1.5"]
[puppetlabs/trapperkeeper ~tk-version :classifier "test"]
[puppetlabs/trapperkeeper-webserver-jetty9 ~tk-jetty9-version :classifier "test"]
[org.flatland/ordered "1.5.2"]]}}
:jar-exclusions [#"leiningen/"]
:main ^:skip-aot com.puppetlabs.puppetdb.core)