-
Notifications
You must be signed in to change notification settings - Fork 129
/
Rakefile
48 lines (39 loc) · 965 Bytes
/
Rakefile
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
# -*- Mode: ruby -*-
require 'rubygems'
require 'rake'
def jar_name
text = File.read('project.clj')
unless / midje\s+"(\d+\.\d+.\d+)"/ =~ text ||
/ midje\s+"(\d+\.\d+(-RC\d+)?)"/ =~ text ||
/ midje\s+"(\d+\.\d+(\.\d+)*-SNAPSHOT)"/ =~ text ||
/ midje\s+"(\d+\.\d-alpha\d+)"/ =~ text ||
/ midje\s+"(\d+\.\d-beta\d+)"/ =~ text
puts "Rake task error: couldn't find version in project file."
exit 1
end
jar = "midje-#{$1}.jar"
puts "jar name: #{jar}"
jar
end
def doit(text)
puts "== " + text
system(text)
end
task :default => :fresh
desc "Test a fresh build, manual checking for now"
task :fresh do
doit("lein clean")
doit("lein jar")
end
task :jar_name do
puts jar_name
end
desc "upload to clojars"
task :upload => [:fresh] do
doit("lein deploy clojars")
end
task :deploy => [:upload]
desc "Check many versions of Clojure"
task :compatibility do
doit("lein compatibility")
end