fuburake 0.5.0.23 → 0.9.0.25
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/fuburake.rb +78 -4
- data/lib/msbuild.rb +7 -2
- data/lib/nunit.rb +34 -13
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YjU4YmVhMjgyYjljNDBkZmI1MWE1YmQ2OTRjMDEyMjZiMjE5MjQyMw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
Yzk0N2ViMWU5ZDQ3YjBmNjA4N2Q5MmM0Y2FhNGYyNmUyOWNiZTlhNA==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
MjIyOGRhNGViMzM5YWNlZTk4NzgzOGVmMGViNGY5MmM4ZTFiMGRlYzA1Y2Yz
|
10
|
+
MGFmYWE2MmVkMTAwNzA0MjUwNjkwYTNmOGVlZjNmMmMwNTdkMTM4OTg3N2Q0
|
11
|
+
ODdiYjdhMDEwN2E3ZjhhOWYzMDFlMTgwMTM5MWRmNTlhZjQ4NjI=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZmYxNTlkODI2ZWM5ZmEwMTA2ZDZhMDZmZThkMDQ4ZjBlZWE1YjA0ODBjMDQy
|
14
|
+
ODUxYTAzMzRmMDQ5MWNiMjU5ZDE1ZDQzNTg3MTA5YTFhYjJkY2JhZWMwZGY0
|
15
|
+
MzQwODk5N2I3NzJmMWQxYmQzNjNhZDJkYjQ1NDc3MTkzMDIzZDM=
|
data/lib/fuburake.rb
CHANGED
@@ -23,9 +23,22 @@ module FubuRake
|
|
23
23
|
:ci_steps,
|
24
24
|
:precompile,
|
25
25
|
:integration_test,
|
26
|
-
:compilations
|
27
|
-
|
26
|
+
:compilations,
|
27
|
+
:bottles,
|
28
|
+
:bottles_enabled
|
28
29
|
|
30
|
+
def initialize
|
31
|
+
@options = {}
|
32
|
+
@bottles = []
|
33
|
+
@bottles_enabled = true
|
34
|
+
|
35
|
+
solutions = Dir.glob('**/*.sln')
|
36
|
+
if solutions.count == 1
|
37
|
+
solutionfile = solutions[0]
|
38
|
+
|
39
|
+
@compile = {:solutionfile => solutionfile}
|
40
|
+
end
|
41
|
+
end
|
29
42
|
|
30
43
|
def compile_step(name, solution)
|
31
44
|
@compilations ||= []
|
@@ -34,9 +47,9 @@ module FubuRake
|
|
34
47
|
end
|
35
48
|
|
36
49
|
def assembly_bottle(project)
|
37
|
-
@
|
50
|
+
@bottles ||= []
|
38
51
|
|
39
|
-
@
|
52
|
+
@bottles << FubuRake::AssemblyBottle.new(project)
|
40
53
|
end
|
41
54
|
end
|
42
55
|
|
@@ -103,6 +116,28 @@ module FubuRake
|
|
103
116
|
tasks.compilations.each do |c|
|
104
117
|
c.create @options
|
105
118
|
end
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
if tasks.bottles.empty? && tasks.bottles_enabled
|
123
|
+
Dir.glob('**/.package-manifest').each do |f|
|
124
|
+
dir = File.dirname(f)
|
125
|
+
project = dir.split('/').last
|
126
|
+
if project.index('.Docs') == nil
|
127
|
+
proj_file = "#{dir}/#{project}.csproj"
|
128
|
+
if File.exists?(proj_file)
|
129
|
+
tasks.bottles << FubuRake::AssemblyBottle.new(project)
|
130
|
+
end
|
131
|
+
end
|
132
|
+
|
133
|
+
end
|
134
|
+
end
|
135
|
+
|
136
|
+
if !tasks.bottles.empty?
|
137
|
+
tasks.bottles.each do |c|
|
138
|
+
c.create @options
|
139
|
+
end
|
140
|
+
end
|
106
141
|
end
|
107
142
|
|
108
143
|
def add_dependency(from, to)
|
@@ -159,6 +194,45 @@ module FubuRake
|
|
159
194
|
end
|
160
195
|
end
|
161
196
|
end
|
197
|
+
|
198
|
+
class MvcApp
|
199
|
+
def initialize(options)
|
200
|
+
cleaned_name = options[:name].gsub('.', '_').downcase
|
201
|
+
run_args = "--directory #{options[:directory]}"
|
202
|
+
|
203
|
+
if options.has_key?(:application)
|
204
|
+
run_args += " --application #{options[:application]}
|
205
|
+
end
|
206
|
+
|
207
|
+
if options.has_key?(:build)
|
208
|
+
run_args += " --build #{options[:build]}"
|
209
|
+
end
|
210
|
+
|
211
|
+
task = Rake::Task.define_task "#{cleaned_name}:alias" do
|
212
|
+
sh "bottles alias #{cleaned_name} #{options[:directory]}"
|
213
|
+
end
|
214
|
+
task.add_description "Add the alias for #{options[:directory]}"
|
215
|
+
Rake::Task[:default].enhance ["#{cleaned_name}:alias"]
|
216
|
+
|
217
|
+
|
218
|
+
to_task "#{cleaned_name}:restart", "restart #{cleaned_name}", "touch the web.config file to force ASP.Net hosting to recycle"
|
219
|
+
to_task "#{cleaned_name}:run", "run #{run_args} --open", "run the application with Katana hosting"
|
220
|
+
to_task "#{cleaned_name}:firefox", "run #{run_args} --browser Firefox --watched", "run the application with Katana hosting and 'watch' the application w/ Firefox"
|
221
|
+
to_task "#{cleaned_name}:chrome", "run #{run_args} --browser Chrome --watched", "run the application with Katana hosting and 'watch' the application w/ Chrome"
|
222
|
+
|
223
|
+
end
|
224
|
+
|
225
|
+
def to_task(name, args, description)
|
226
|
+
task = Rake::Task.define_task name do
|
227
|
+
sh "fubu #{args}"
|
228
|
+
end
|
229
|
+
|
230
|
+
task.add_description description
|
231
|
+
return task
|
232
|
+
end
|
233
|
+
end
|
234
|
+
|
235
|
+
|
162
236
|
end
|
163
237
|
|
164
238
|
|
data/lib/msbuild.rb
CHANGED
@@ -8,8 +8,13 @@ module FubuRake
|
|
8
8
|
compileTask = Rake::Task.define_task :compile do
|
9
9
|
MSBuildRunner.compile options.merge(tasks.compile)
|
10
10
|
end
|
11
|
-
|
12
|
-
compileTask.add_description "Compiles the
|
11
|
+
|
12
|
+
compileTask.add_description "Compiles the solution #{tasks.compile[:solutionfile]}"
|
13
|
+
|
14
|
+
openTask = Rake::Task.define_task :sln do
|
15
|
+
sh "start #{tasks.compile[:solutionfile]}"
|
16
|
+
end
|
17
|
+
openTask.add_description "Open solution #{tasks.compile[:solutionfile]}"
|
13
18
|
|
14
19
|
return compileTask
|
15
20
|
end
|
data/lib/nunit.rb
CHANGED
@@ -2,23 +2,38 @@ module FubuRake
|
|
2
2
|
class NUnit
|
3
3
|
def self.create_task(tasks, options)
|
4
4
|
nunitTask = nil
|
5
|
+
|
6
|
+
tests = Array.new
|
7
|
+
|
5
8
|
if options[:unit_test_projects].any?
|
6
|
-
|
7
|
-
runner = NUnitRunner.new options
|
8
|
-
runner.executeTests options[:unit_test_projects]
|
9
|
-
end
|
9
|
+
tests = options[:unit_test_projects]
|
10
10
|
elsif options[:unit_test_list_file] != nil and File::exists?(options[:unit_test_list_file])
|
11
11
|
file = options[:unit_test_list_file]
|
12
|
+
|
13
|
+
tests = NUnitRunner.readFromFile(file)
|
12
14
|
|
15
|
+
else
|
16
|
+
# just find testing projects
|
17
|
+
Dir.glob('**/*.Testing.csproj').each do |f|
|
18
|
+
test = File.basename(f, ".csproj")
|
19
|
+
tests.push test
|
20
|
+
end
|
21
|
+
|
22
|
+
Dir.glob('**/*.Tests.csproj').each do |f|
|
23
|
+
test = File.basename(f, ".csproj")
|
24
|
+
tests.push test
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
|
29
|
+
if !tests.empty?
|
13
30
|
nunitTask = Rake::Task.define_task :unit_test do
|
14
31
|
runner = NUnitRunner.new options
|
15
|
-
runner.
|
32
|
+
runner.executeTests tests
|
16
33
|
end
|
17
|
-
end
|
18
34
|
|
19
|
-
if nunitTask != nil
|
20
35
|
nunitTask.enhance [:compile]
|
21
|
-
nunitTask.add_description "Runs unit tests"
|
36
|
+
nunitTask.add_description "Runs unit tests for " + tests.join(', ')
|
22
37
|
end
|
23
38
|
|
24
39
|
if tasks.integration_test != nil
|
@@ -55,11 +70,7 @@ class NUnitRunner
|
|
55
70
|
end
|
56
71
|
end
|
57
72
|
|
58
|
-
def
|
59
|
-
if !File.exist?(file)
|
60
|
-
throw "File #{file} does not exist"
|
61
|
-
end
|
62
|
-
|
73
|
+
def self.readFromFile(file)
|
63
74
|
tests = Array.new
|
64
75
|
|
65
76
|
file = File.new(file, "r")
|
@@ -70,6 +81,16 @@ class NUnitRunner
|
|
70
81
|
end
|
71
82
|
file.close
|
72
83
|
|
84
|
+
return tests
|
85
|
+
end
|
86
|
+
|
87
|
+
def executeTestsInFile(file)
|
88
|
+
if !File.exist?(file)
|
89
|
+
throw "File #{file} does not exist"
|
90
|
+
end
|
91
|
+
|
92
|
+
tests = readFromFile(file)
|
93
|
+
|
73
94
|
if (!tests.empty?)
|
74
95
|
executeTests tests
|
75
96
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fuburake
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.9.0.25
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeremy D. Miller
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2013-
|
13
|
+
date: 2013-08-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: ripple-cli
|