-
Notifications
You must be signed in to change notification settings - Fork 2
/
build.boot
58 lines (50 loc) · 1.67 KB
/
build.boot
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
(set-env!
:source-paths #{"src" "test"}
:dependencies '[[org.clojure/clojure "1.8.0"]
[org.clojure/clojurescript "1.8.51" :scope "test"]
[adzerk/bootlaces "0.1.12" :scope "test"]
[adzerk/boot-test "1.0.4" :scope "test"]
[crisptrutski/boot-cljs-test "0.2.0-SNAPSHOT" :scope "test"]])
(require '[adzerk.bootlaces :refer :all]
'[adzerk.boot-test :refer :all]
'[crisptrutski.boot-cljs-test :refer (test-cljs)])
(def +version+ "0.3.1")
(bootlaces! +version+)
(task-options!
pom {:project 'music-theory
:version +version+
:description "A music theory library for Clojure/ClojureScript"
:url "https://github.com/daveyarwood/music-theory"
:scm {:url "https://github.com/daveyarwood/music-theory"}
:license {"name" "Eclipse Public License"
"url" "http://www.eclipse.org/legal/epl-v10.html"}}
test {:namespaces '#{music-theory.chord-test
music-theory.duration-test
music-theory.note-test
music-theory.pitch-test}})
(deftask space
[]
(with-pre-wrap fs
(println)
fs))
(deftask print-heading
[H heading HEADING str "The heading to print."]
(with-pre-wrap fs
(println "---" heading "---")
fs))
(deftask tests
"Runs tests for both Clojure and ClojureScript."
[]
(comp
(print-heading :heading "Clojure tests")
(test)
(space)
(print-heading :heading "ClojureScript tests")
(space)
(test-cljs)))
(deftask deploy
"Builds uberjar, installs it to local Maven repo, and deploys it to Clojars."
[]
(comp
(build-jar)
(push-release)))