fudge 0.3.7 → 0.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/fudge/output_checker.rb +0 -1
- data/lib/fudge/rspec/matchers.rb +17 -11
- data/lib/fudge/runner.rb +1 -3
- data/lib/fudge/tasks.rb +1 -0
- data/lib/fudge/tasks/cane.rb +1 -5
- data/lib/fudge/tasks/composite_task.rb +2 -5
- data/lib/fudge/tasks/each_directory.rb +5 -5
- data/lib/fudge/tasks/flog.rb +3 -13
- data/lib/fudge/tasks/sub_process.rb +54 -0
- data/lib/fudge/version.rb +1 -1
- data/lib/fudge/with_directory.rb +1 -4
- data/spec/lib/fudge/tasks/sub_process_spec.rb +104 -0
- metadata +147 -98
- checksums.yaml +0 -7
data/lib/fudge/output_checker.rb
CHANGED
data/lib/fudge/rspec/matchers.rb
CHANGED
@@ -20,26 +20,23 @@ module FudgeMatchers
|
|
20
20
|
@task = task
|
21
21
|
ran = []
|
22
22
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
23
|
+
to_stub =
|
24
|
+
if task.is_a?(Fudge::Tasks::Shell)
|
25
|
+
task
|
26
|
+
else
|
27
|
+
Fudge::Tasks::Shell.any_instance
|
28
|
+
end
|
28
29
|
|
29
30
|
to_stub.stub(:run_command) do |cmd, outputio|
|
30
31
|
raise "Run Command requires an output IOStream" unless outputio
|
31
|
-
ran
|
32
|
+
ran.push(cmd)
|
32
33
|
['dummy output', true]
|
33
34
|
end
|
34
35
|
|
35
36
|
task.run(args)
|
36
37
|
|
37
38
|
@actual = ran
|
38
|
-
|
39
|
-
ran.any? {|cmd| cmd =~ expected}
|
40
|
-
else
|
41
|
-
ran.include? expected
|
42
|
-
end
|
39
|
+
run_matches?(ran, expected)
|
43
40
|
end
|
44
41
|
|
45
42
|
# Failure message
|
@@ -49,6 +46,15 @@ module FudgeMatchers
|
|
49
46
|
message << "to run:\n #{@expected}\n"
|
50
47
|
message << "but it ran:\n #{@actual}"
|
51
48
|
end
|
49
|
+
|
50
|
+
private
|
51
|
+
def run_matches?(ran, expected)
|
52
|
+
if expected.is_a? Regexp
|
53
|
+
ran.any? {|cmd| cmd =~ expected}
|
54
|
+
else
|
55
|
+
ran.include? expected
|
56
|
+
end
|
57
|
+
end
|
52
58
|
end
|
53
59
|
end
|
54
60
|
|
data/lib/fudge/runner.rb
CHANGED
@@ -19,9 +19,7 @@ module Fudge
|
|
19
19
|
|
20
20
|
def output_start(which, output)
|
21
21
|
which_build = String.new(which)
|
22
|
-
|
23
|
-
output.puts "Running build ".foreground(:cyan) +
|
24
|
-
which_build.bright.foreground(:yellow)
|
22
|
+
output.puts %Q(#{'Running build'.foreground(:cyan)} #{which_build.bright.foreground(:yellow)})
|
25
23
|
end
|
26
24
|
|
27
25
|
def run(which, options)
|
data/lib/fudge/tasks.rb
CHANGED
data/lib/fudge/tasks/cane.rb
CHANGED
@@ -47,11 +47,8 @@ module Fudge
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def output_message(t, output)
|
50
|
-
message =
|
51
|
-
message
|
52
|
-
message << task_name_coloured(t)
|
53
|
-
message << args_coloured(t)
|
54
|
-
output.puts message.join(' ')
|
50
|
+
message = "#{running_coloured} #{task_name_coloured(t)} #{args_coloured(t)}"
|
51
|
+
output.puts message
|
55
52
|
end
|
56
53
|
|
57
54
|
def running_coloured
|
@@ -13,11 +13,11 @@ module Fudge
|
|
13
13
|
|
14
14
|
def run(options={})
|
15
15
|
output = options[:output] || $stdout
|
16
|
-
directories.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
directories.all? do |dir|
|
17
|
+
skip_directory?(dir) ||
|
18
|
+
WithDirectory.new(dir, output).inside do
|
19
|
+
super
|
20
|
+
end
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
data/lib/fudge/tasks/flog.rb
CHANGED
@@ -66,19 +66,9 @@ module Fudge
|
|
66
66
|
end
|
67
67
|
|
68
68
|
def extract_scores(matches)
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
when 'flog total'
|
73
|
-
total = value.to_f
|
74
|
-
when 'flog/method average'
|
75
|
-
average = value.to_f
|
76
|
-
else
|
77
|
-
max = value.to_f unless value.nil?
|
78
|
-
break
|
79
|
-
end
|
80
|
-
end
|
81
|
-
[average, max, total]
|
69
|
+
values = extract_lines(matches).take(3).map(&:first)
|
70
|
+
total, average, max = values.map(&:to_f)
|
71
|
+
[average, (max || 0.0), total]
|
82
72
|
end
|
83
73
|
|
84
74
|
def extract_lines(matches)
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# # -*- encoding : utf-8 -*-
|
2
|
+
|
3
|
+
require 'shellwords'
|
4
|
+
|
5
|
+
module Fudge
|
6
|
+
module Tasks
|
7
|
+
# Allow use of shell commands as tasks.
|
8
|
+
#
|
9
|
+
# Unlike Fudge::Shell, this task will not spawn a new shell.
|
10
|
+
#
|
11
|
+
# Allows the caller to set environment variables for the process,
|
12
|
+
# and to specify process attributes, as with Process::Spawn.
|
13
|
+
#
|
14
|
+
# The constructor and {#run #run} method each accept two new
|
15
|
+
# options, {#environment :environment} and {#spawn_options
|
16
|
+
# :spawn_options}.
|
17
|
+
class SubProcess < Shell
|
18
|
+
# @!attribute environment
|
19
|
+
# @return [Hash] environment variables to be set for the
|
20
|
+
# process; the keys are strings, corresponding
|
21
|
+
# to the variables' names (case sensitive).
|
22
|
+
attr_accessor :environment
|
23
|
+
# @!attribute spawn_options
|
24
|
+
# @return [Hash] attributes for the spawned process (see
|
25
|
+
# Ruby's Process::spawn documentation for
|
26
|
+
# details)
|
27
|
+
attr_accessor :spawn_options
|
28
|
+
|
29
|
+
private
|
30
|
+
|
31
|
+
# Defines the command to run
|
32
|
+
def cmd(options={})
|
33
|
+
env = merge_option(:environment, options)
|
34
|
+
spawn_options = merge_option(:spawn_options, options)
|
35
|
+
mk_cmd(env, arguments, spawn_options)
|
36
|
+
end
|
37
|
+
|
38
|
+
# Merges the option hash set when the task was create with that
|
39
|
+
# passed in on this run.
|
40
|
+
def merge_option(key, options)
|
41
|
+
my_options = self.send(key) || {}
|
42
|
+
my_options.merge(options[key] || {})
|
43
|
+
end
|
44
|
+
|
45
|
+
# Make the command for IO::popen, by splitting the command line
|
46
|
+
# into an array and adding the environment variables and spawn options.
|
47
|
+
def mk_cmd(env, cmd, options)
|
48
|
+
[env, cmd.shellsplit, options].flatten
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
register SubProcess
|
53
|
+
end
|
54
|
+
end
|
data/lib/fudge/version.rb
CHANGED
data/lib/fudge/with_directory.rb
CHANGED
@@ -18,10 +18,7 @@ class Fudge::WithDirectory
|
|
18
18
|
private
|
19
19
|
|
20
20
|
def output_message
|
21
|
-
message = ""
|
22
|
-
message << "--> In directory".foreground(:cyan)
|
23
|
-
message << " #{dir}:".foreground(:cyan).bright
|
24
|
-
|
21
|
+
message = %Q(#{'--> In directory'.foreground(:cyan)} #{"#{dir}:".foreground(:cyan).bright})
|
25
22
|
output.puts message
|
26
23
|
end
|
27
24
|
end
|
@@ -0,0 +1,104 @@
|
|
1
|
+
# -*- encoding : utf-8 -*-
|
2
|
+
require 'spec_helper'
|
3
|
+
|
4
|
+
describe Fudge::Tasks::SubProcess do
|
5
|
+
let(:output) { StringIO.new }
|
6
|
+
|
7
|
+
describe :run do
|
8
|
+
it "takes a command and runs it" do
|
9
|
+
expect(described_class.new(:ls)).to run_command [{}, 'ls', {}]
|
10
|
+
end
|
11
|
+
|
12
|
+
it "adds any arguments given" do
|
13
|
+
expect(described_class.new(:ls, '-l', '-a')).to run_command [{}, 'ls', '-l', '-a', {}]
|
14
|
+
end
|
15
|
+
|
16
|
+
it "returns false for an unsuccessful command" do
|
17
|
+
expect(described_class.new(:ls, '--newnre').run).to be_false
|
18
|
+
end
|
19
|
+
|
20
|
+
it "returns true for a successful command" do
|
21
|
+
expect(described_class.new(:ls).run).to be_true
|
22
|
+
end
|
23
|
+
|
24
|
+
context "when given environment variables" do
|
25
|
+
context "when the task is created" do
|
26
|
+
it "passes the variables to the sub-process" do
|
27
|
+
process = described_class.new(%(ruby -e "puts ENV['PATH'];puts ENV['FOO']"), environment: { 'FOO' => 'bar' })
|
28
|
+
|
29
|
+
process.run(output: output)
|
30
|
+
|
31
|
+
expect(output.string).to eq "#{ENV['PATH']}\nbar\n"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
context "when the task is run" do
|
36
|
+
it "passes the variables to the sub-process" do
|
37
|
+
process = described_class.new(%(ruby -e "puts ENV['PATH'];puts ENV['FOO']"))
|
38
|
+
|
39
|
+
process.run(output: output, environment: { 'FOO' => 'bar' })
|
40
|
+
|
41
|
+
expect(output.string).to eq "#{ENV['PATH']}\nbar\n"
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
context "when the task is created and when it is run" do
|
46
|
+
it "gives priority to the variables passed in on run" do
|
47
|
+
process = described_class.new(%(ruby -e "puts ENV['FOO'];puts ENV['BAZ']"),
|
48
|
+
environment: { 'FOO' => 'bar', 'BAZ' => 'quux' })
|
49
|
+
|
50
|
+
process.run(output: output, environment: { 'FOO' => 'codfanglers' })
|
51
|
+
|
52
|
+
expect(output.string).to eq "codfanglers\nquux\n"
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
context "when not given an environment variable" do
|
58
|
+
it "does not make that variable available to the sub-process" do
|
59
|
+
process = described_class.new(%(ruby -e "puts ENV['FOO']"))
|
60
|
+
|
61
|
+
process.run(output: output)
|
62
|
+
|
63
|
+
expect(output.string).to eq "\n"
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
context "when given spawn options" do
|
68
|
+
context "when the task is created" do
|
69
|
+
it "applies those options to the sub-process" do
|
70
|
+
process = described_class.new(%(ruby -e "puts ENV['PATH'];puts ENV['FOO']"),
|
71
|
+
environment: { 'FOO' => 'bar' },
|
72
|
+
spawn_options: { unsetenv_others: true }) # Should clear environment variables
|
73
|
+
|
74
|
+
process.run(output: output)
|
75
|
+
|
76
|
+
expect(output.string).to match /\A(nil)?\nbar\n\z/
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
context "when the task is run" do
|
81
|
+
it "applies those options to the sub-process" do
|
82
|
+
process = described_class.new(%(ruby -e "puts ENV['PATH'];puts ENV['FOO']"),
|
83
|
+
environment: { 'FOO' => 'bar' })
|
84
|
+
|
85
|
+
process.run(output: output, spawn_options: { unsetenv_others: true })
|
86
|
+
|
87
|
+
expect(output.string).to match /\A(nil)?\nbar\n\z/
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
91
|
+
context "when the task is created and when it is run" do
|
92
|
+
it "gives priority to the options passed in on run" do
|
93
|
+
process = described_class.new(%(ruby -e "puts ENV['PATH'];puts ENV['FOO']"),
|
94
|
+
environment: { 'FOO' => 'bar' },
|
95
|
+
spawn_options: { unsetenv_others: true }) # Clear environment variables
|
96
|
+
|
97
|
+
process.run(output: output, spawn_options: { unsetenv_others: false }) # Actually, don't!
|
98
|
+
|
99
|
+
expect(output.string).to eq "#{ENV['PATH']}\nbar\n"
|
100
|
+
end
|
101
|
+
end
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
metadata
CHANGED
@@ -1,32 +1,36 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fudge
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.8
|
5
|
+
prerelease:
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Sage One team
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2014-03-
|
12
|
+
date: 2014-03-13 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: thor
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- - '>='
|
19
|
+
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
19
21
|
version: '0'
|
20
22
|
type: :runtime
|
21
23
|
prerelease: false
|
22
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
23
26
|
requirements:
|
24
|
-
- - '>='
|
27
|
+
- - ! '>='
|
25
28
|
- !ruby/object:Gem::Version
|
26
29
|
version: '0'
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
31
|
name: rainbow
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
35
|
- - ~>
|
32
36
|
- !ruby/object:Gem::Version
|
@@ -34,6 +38,7 @@ dependencies:
|
|
34
38
|
type: :runtime
|
35
39
|
prerelease: false
|
36
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
37
42
|
requirements:
|
38
43
|
- - ~>
|
39
44
|
- !ruby/object:Gem::Version
|
@@ -41,20 +46,23 @@ dependencies:
|
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
47
|
name: activesupport
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
|
-
- - '>='
|
51
|
+
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
47
53
|
version: '0'
|
48
54
|
type: :runtime
|
49
55
|
prerelease: false
|
50
56
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
51
58
|
requirements:
|
52
|
-
- - '>='
|
59
|
+
- - ! '>='
|
53
60
|
- !ruby/object:Gem::Version
|
54
61
|
version: '0'
|
55
62
|
- !ruby/object:Gem::Dependency
|
56
63
|
name: json
|
57
64
|
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
58
66
|
requirements:
|
59
67
|
- - ~>
|
60
68
|
- !ruby/object:Gem::Version
|
@@ -62,6 +70,7 @@ dependencies:
|
|
62
70
|
type: :runtime
|
63
71
|
prerelease: false
|
64
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
65
74
|
requirements:
|
66
75
|
- - ~>
|
67
76
|
- !ruby/object:Gem::Version
|
@@ -69,211 +78,241 @@ dependencies:
|
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: redcarpet
|
71
80
|
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
72
82
|
requirements:
|
73
|
-
- - '>='
|
83
|
+
- - ! '>='
|
74
84
|
- !ruby/object:Gem::Version
|
75
85
|
version: '0'
|
76
86
|
type: :development
|
77
87
|
prerelease: false
|
78
88
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
79
90
|
requirements:
|
80
|
-
- - '>='
|
91
|
+
- - ! '>='
|
81
92
|
- !ruby/object:Gem::Version
|
82
93
|
version: '0'
|
83
94
|
- !ruby/object:Gem::Dependency
|
84
95
|
name: rspec
|
85
96
|
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
86
98
|
requirements:
|
87
|
-
- - '>='
|
99
|
+
- - ! '>='
|
88
100
|
- !ruby/object:Gem::Version
|
89
101
|
version: 2.8.0
|
90
102
|
type: :development
|
91
103
|
prerelease: false
|
92
104
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
93
106
|
requirements:
|
94
|
-
- - '>='
|
107
|
+
- - ! '>='
|
95
108
|
- !ruby/object:Gem::Version
|
96
109
|
version: 2.8.0
|
97
110
|
- !ruby/object:Gem::Dependency
|
98
111
|
name: guard-rspec
|
99
112
|
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
100
114
|
requirements:
|
101
|
-
- - '>='
|
115
|
+
- - ! '>='
|
102
116
|
- !ruby/object:Gem::Version
|
103
117
|
version: '0'
|
104
118
|
type: :development
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
107
122
|
requirements:
|
108
|
-
- - '>='
|
123
|
+
- - ! '>='
|
109
124
|
- !ruby/object:Gem::Version
|
110
125
|
version: '0'
|
111
126
|
- !ruby/object:Gem::Dependency
|
112
127
|
name: rb-fsevent
|
113
128
|
requirement: !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
114
130
|
requirements:
|
115
|
-
- - '>='
|
131
|
+
- - ! '>='
|
116
132
|
- !ruby/object:Gem::Version
|
117
133
|
version: '0'
|
118
134
|
type: :development
|
119
135
|
prerelease: false
|
120
136
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
121
138
|
requirements:
|
122
|
-
- - '>='
|
139
|
+
- - ! '>='
|
123
140
|
- !ruby/object:Gem::Version
|
124
141
|
version: '0'
|
125
142
|
- !ruby/object:Gem::Dependency
|
126
143
|
name: yard
|
127
144
|
requirement: !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
128
146
|
requirements:
|
129
|
-
- - '>='
|
147
|
+
- - ! '>='
|
130
148
|
- !ruby/object:Gem::Version
|
131
149
|
version: '0'
|
132
150
|
type: :development
|
133
151
|
prerelease: false
|
134
152
|
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
135
154
|
requirements:
|
136
|
-
- - '>='
|
155
|
+
- - ! '>='
|
137
156
|
- !ruby/object:Gem::Version
|
138
157
|
version: '0'
|
139
158
|
- !ruby/object:Gem::Dependency
|
140
159
|
name: cane
|
141
160
|
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
142
162
|
requirements:
|
143
|
-
- - '>='
|
163
|
+
- - ! '>='
|
144
164
|
- !ruby/object:Gem::Version
|
145
165
|
version: '0'
|
146
166
|
type: :development
|
147
167
|
prerelease: false
|
148
168
|
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
149
170
|
requirements:
|
150
|
-
- - '>='
|
171
|
+
- - ! '>='
|
151
172
|
- !ruby/object:Gem::Version
|
152
173
|
version: '0'
|
153
174
|
- !ruby/object:Gem::Dependency
|
154
175
|
name: flog
|
155
176
|
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
156
178
|
requirements:
|
157
|
-
- - '>='
|
179
|
+
- - ! '>='
|
158
180
|
- !ruby/object:Gem::Version
|
159
181
|
version: '0'
|
160
182
|
type: :development
|
161
183
|
prerelease: false
|
162
184
|
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
163
186
|
requirements:
|
164
|
-
- - '>='
|
187
|
+
- - ! '>='
|
165
188
|
- !ruby/object:Gem::Version
|
166
189
|
version: '0'
|
167
190
|
- !ruby/object:Gem::Dependency
|
168
191
|
name: flay
|
169
192
|
requirement: !ruby/object:Gem::Requirement
|
193
|
+
none: false
|
170
194
|
requirements:
|
171
|
-
- - '>='
|
195
|
+
- - ! '>='
|
172
196
|
- !ruby/object:Gem::Version
|
173
197
|
version: '0'
|
174
198
|
type: :development
|
175
199
|
prerelease: false
|
176
200
|
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
177
202
|
requirements:
|
178
|
-
- - '>='
|
203
|
+
- - ! '>='
|
179
204
|
- !ruby/object:Gem::Version
|
180
205
|
version: '0'
|
181
206
|
- !ruby/object:Gem::Dependency
|
182
207
|
name: ruby2ruby
|
183
208
|
requirement: !ruby/object:Gem::Requirement
|
209
|
+
none: false
|
184
210
|
requirements:
|
185
|
-
- - '>='
|
211
|
+
- - ! '>='
|
186
212
|
- !ruby/object:Gem::Version
|
187
213
|
version: '0'
|
188
214
|
type: :development
|
189
215
|
prerelease: false
|
190
216
|
version_requirements: !ruby/object:Gem::Requirement
|
217
|
+
none: false
|
191
218
|
requirements:
|
192
|
-
- - '>='
|
219
|
+
- - ! '>='
|
193
220
|
- !ruby/object:Gem::Version
|
194
221
|
version: '0'
|
195
222
|
- !ruby/object:Gem::Dependency
|
196
223
|
name: RedCloth
|
197
224
|
requirement: !ruby/object:Gem::Requirement
|
225
|
+
none: false
|
198
226
|
requirements:
|
199
|
-
- - '>='
|
227
|
+
- - ! '>='
|
200
228
|
- !ruby/object:Gem::Version
|
201
229
|
version: '0'
|
202
230
|
type: :development
|
203
231
|
prerelease: false
|
204
232
|
version_requirements: !ruby/object:Gem::Requirement
|
233
|
+
none: false
|
205
234
|
requirements:
|
206
|
-
- - '>='
|
235
|
+
- - ! '>='
|
207
236
|
- !ruby/object:Gem::Version
|
208
237
|
version: '0'
|
209
238
|
- !ruby/object:Gem::Dependency
|
210
239
|
name: simplecov
|
211
240
|
requirement: !ruby/object:Gem::Requirement
|
241
|
+
none: false
|
212
242
|
requirements:
|
213
|
-
- - '>='
|
243
|
+
- - ! '>='
|
214
244
|
- !ruby/object:Gem::Version
|
215
245
|
version: '0'
|
216
246
|
type: :development
|
217
247
|
prerelease: false
|
218
248
|
version_requirements: !ruby/object:Gem::Requirement
|
249
|
+
none: false
|
219
250
|
requirements:
|
220
|
-
- - '>='
|
251
|
+
- - ! '>='
|
221
252
|
- !ruby/object:Gem::Version
|
222
253
|
version: '0'
|
223
254
|
- !ruby/object:Gem::Dependency
|
224
255
|
name: rb-inotify
|
225
256
|
requirement: !ruby/object:Gem::Requirement
|
257
|
+
none: false
|
226
258
|
requirements:
|
227
|
-
- - '>='
|
259
|
+
- - ! '>='
|
228
260
|
- !ruby/object:Gem::Version
|
229
261
|
version: '0'
|
230
262
|
type: :development
|
231
263
|
prerelease: false
|
232
264
|
version_requirements: !ruby/object:Gem::Requirement
|
265
|
+
none: false
|
233
266
|
requirements:
|
234
|
-
- - '>='
|
267
|
+
- - ! '>='
|
235
268
|
- !ruby/object:Gem::Version
|
236
269
|
version: '0'
|
237
270
|
- !ruby/object:Gem::Dependency
|
238
271
|
name: libnotify
|
239
272
|
requirement: !ruby/object:Gem::Requirement
|
273
|
+
none: false
|
240
274
|
requirements:
|
241
|
-
- - '>='
|
275
|
+
- - ! '>='
|
242
276
|
- !ruby/object:Gem::Version
|
243
277
|
version: '0'
|
244
278
|
type: :development
|
245
279
|
prerelease: false
|
246
280
|
version_requirements: !ruby/object:Gem::Requirement
|
281
|
+
none: false
|
247
282
|
requirements:
|
248
|
-
- - '>='
|
283
|
+
- - ! '>='
|
249
284
|
- !ruby/object:Gem::Version
|
250
285
|
version: '0'
|
251
286
|
- !ruby/object:Gem::Dependency
|
252
287
|
name: pry
|
253
288
|
requirement: !ruby/object:Gem::Requirement
|
289
|
+
none: false
|
254
290
|
requirements:
|
255
|
-
- - '>='
|
291
|
+
- - ! '>='
|
256
292
|
- !ruby/object:Gem::Version
|
257
293
|
version: '0'
|
258
294
|
type: :development
|
259
295
|
prerelease: false
|
260
296
|
version_requirements: !ruby/object:Gem::Requirement
|
297
|
+
none: false
|
261
298
|
requirements:
|
262
|
-
- - '>='
|
299
|
+
- - ! '>='
|
263
300
|
- !ruby/object:Gem::Version
|
264
301
|
version: '0'
|
265
302
|
- !ruby/object:Gem::Dependency
|
266
303
|
name: rake
|
267
304
|
requirement: !ruby/object:Gem::Requirement
|
305
|
+
none: false
|
268
306
|
requirements:
|
269
|
-
- - '>='
|
307
|
+
- - ! '>='
|
270
308
|
- !ruby/object:Gem::Version
|
271
309
|
version: '0'
|
272
310
|
type: :development
|
273
311
|
prerelease: false
|
274
312
|
version_requirements: !ruby/object:Gem::Requirement
|
313
|
+
none: false
|
275
314
|
requirements:
|
276
|
-
- - '>='
|
315
|
+
- - ! '>='
|
277
316
|
- !ruby/object:Gem::Version
|
278
317
|
version: '0'
|
279
318
|
description: Fudge Continuous Integration Server
|
@@ -283,112 +322,122 @@ executables:
|
|
283
322
|
extensions: []
|
284
323
|
extra_rdoc_files: []
|
285
324
|
files:
|
286
|
-
- bin/fudge
|
287
325
|
- lib/fudge.rb
|
288
|
-
- lib/fudge/build.rb
|
289
326
|
- lib/fudge/cli.rb
|
290
|
-
- lib/fudge/description.rb
|
291
|
-
- lib/fudge/exceptions.rb
|
292
|
-
- lib/fudge/file_finder.rb
|
293
|
-
- lib/fudge/generator.rb
|
294
|
-
- lib/fudge/helpers.rb
|
295
|
-
- lib/fudge/helpers/bundle_aware.rb
|
296
327
|
- lib/fudge/output_checker.rb
|
297
|
-
- lib/fudge/
|
298
|
-
- lib/fudge/
|
299
|
-
- lib/fudge/
|
300
|
-
- lib/fudge/task_dsl.rb
|
301
|
-
- lib/fudge/tasks.rb
|
302
|
-
- lib/fudge/tasks/brakeman.rb
|
303
|
-
- lib/fudge/tasks/cane.rb
|
304
|
-
- lib/fudge/tasks/clean_bundler_env.rb
|
305
|
-
- lib/fudge/tasks/composite_task.rb
|
306
|
-
- lib/fudge/tasks/each_directory.rb
|
307
|
-
- lib/fudge/tasks/flay.rb
|
308
|
-
- lib/fudge/tasks/flog.rb
|
309
|
-
- lib/fudge/tasks/in_directory.rb
|
328
|
+
- lib/fudge/build.rb
|
329
|
+
- lib/fudge/version.rb
|
330
|
+
- lib/fudge/helpers.rb
|
310
331
|
- lib/fudge/tasks/rake.rb
|
332
|
+
- lib/fudge/tasks/brakeman.rb
|
311
333
|
- lib/fudge/tasks/rspec.rb
|
312
334
|
- lib/fudge/tasks/shell.rb
|
313
|
-
- lib/fudge/tasks/
|
335
|
+
- lib/fudge/tasks/each_directory.rb
|
336
|
+
- lib/fudge/tasks/sub_process.rb
|
337
|
+
- lib/fudge/tasks/clean_bundler_env.rb
|
338
|
+
- lib/fudge/tasks/flog.rb
|
314
339
|
- lib/fudge/tasks/yard.rb
|
315
|
-
- lib/fudge/
|
340
|
+
- lib/fudge/tasks/task.rb
|
341
|
+
- lib/fudge/tasks/cane.rb
|
342
|
+
- lib/fudge/tasks/flay.rb
|
343
|
+
- lib/fudge/tasks/composite_task.rb
|
344
|
+
- lib/fudge/tasks/in_directory.rb
|
345
|
+
- lib/fudge/runner.rb
|
346
|
+
- lib/fudge/parser.rb
|
347
|
+
- lib/fudge/tasks.rb
|
348
|
+
- lib/fudge/generator.rb
|
349
|
+
- lib/fudge/description.rb
|
350
|
+
- lib/fudge/helpers/bundle_aware.rb
|
351
|
+
- lib/fudge/file_finder.rb
|
352
|
+
- lib/fudge/exceptions.rb
|
353
|
+
- lib/fudge/rspec/matchers.rb
|
316
354
|
- lib/fudge/with_directory.rb
|
317
|
-
-
|
318
|
-
- spec/
|
319
|
-
- spec/
|
355
|
+
- lib/fudge/task_dsl.rb
|
356
|
+
- spec/support/dummy_task.rb
|
357
|
+
- spec/support/output.rb
|
358
|
+
- spec/support/tmpdir.rb
|
359
|
+
- spec/spec_helper.rb
|
320
360
|
- spec/lib/fudge/exceptions_spec.rb
|
321
|
-
- spec/lib/fudge/
|
322
|
-
- spec/lib/fudge/parser_spec.rb
|
361
|
+
- spec/lib/fudge/build_spec.rb
|
323
362
|
- spec/lib/fudge/runner_spec.rb
|
324
|
-
- spec/lib/fudge/
|
363
|
+
- spec/lib/fudge/parser_spec.rb
|
364
|
+
- spec/lib/fudge/tasks/flay_spec.rb
|
325
365
|
- spec/lib/fudge/tasks/bundler_spec.rb
|
366
|
+
- spec/lib/fudge/tasks/flog_spec.rb
|
367
|
+
- spec/lib/fudge/tasks/each_directory_spec.rb
|
326
368
|
- spec/lib/fudge/tasks/cane_spec.rb
|
369
|
+
- spec/lib/fudge/tasks/yard_spec.rb
|
370
|
+
- spec/lib/fudge/tasks/shell_spec.rb
|
371
|
+
- spec/lib/fudge/tasks/sub_process_spec.rb
|
372
|
+
- spec/lib/fudge/tasks/brakeman_spec.rb
|
327
373
|
- spec/lib/fudge/tasks/composite_task_spec.rb
|
328
|
-
- spec/lib/fudge/tasks/each_directory_spec.rb
|
329
|
-
- spec/lib/fudge/tasks/flay_spec.rb
|
330
|
-
- spec/lib/fudge/tasks/flog_spec.rb
|
331
|
-
- spec/lib/fudge/tasks/in_directory_spec.rb
|
332
|
-
- spec/lib/fudge/tasks/rake_spec.rb
|
333
374
|
- spec/lib/fudge/tasks/rspec_spec.rb
|
334
|
-
- spec/lib/fudge/tasks/shell_spec.rb
|
335
375
|
- spec/lib/fudge/tasks/task_spec.rb
|
336
|
-
- spec/lib/fudge/tasks/
|
376
|
+
- spec/lib/fudge/tasks/rake_spec.rb
|
377
|
+
- spec/lib/fudge/tasks/in_directory_spec.rb
|
378
|
+
- spec/lib/fudge/cli_spec.rb
|
337
379
|
- spec/lib/fudge/tasks_spec.rb
|
338
380
|
- spec/lib/fudge/with_directory_spec.rb
|
339
|
-
- spec/
|
340
|
-
- spec/
|
341
|
-
-
|
342
|
-
- spec/support/tmpdir.rb
|
381
|
+
- spec/lib/fudge/output_checker_spec.rb
|
382
|
+
- spec/lib/fudge/description_spec.rb
|
383
|
+
- bin/fudge
|
343
384
|
homepage: http://github.com/Sage/fudge
|
344
385
|
licenses:
|
345
386
|
- MIT
|
346
|
-
metadata: {}
|
347
387
|
post_install_message:
|
348
388
|
rdoc_options: []
|
349
389
|
require_paths:
|
350
390
|
- lib
|
351
391
|
required_ruby_version: !ruby/object:Gem::Requirement
|
392
|
+
none: false
|
352
393
|
requirements:
|
353
|
-
- - '>='
|
394
|
+
- - ! '>='
|
354
395
|
- !ruby/object:Gem::Version
|
355
396
|
version: '0'
|
397
|
+
segments:
|
398
|
+
- 0
|
399
|
+
hash: -792395080375115495
|
356
400
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
401
|
+
none: false
|
357
402
|
requirements:
|
358
|
-
- - '>='
|
403
|
+
- - ! '>='
|
359
404
|
- !ruby/object:Gem::Version
|
360
405
|
version: '0'
|
406
|
+
segments:
|
407
|
+
- 0
|
408
|
+
hash: -792395080375115495
|
361
409
|
requirements: []
|
362
410
|
rubyforge_project:
|
363
|
-
rubygems_version:
|
411
|
+
rubygems_version: 1.8.23
|
364
412
|
signing_key:
|
365
|
-
specification_version:
|
413
|
+
specification_version: 3
|
366
414
|
summary: Fudge CI Server
|
367
415
|
test_files:
|
416
|
+
- spec/support/dummy_task.rb
|
368
417
|
- spec/support/output.rb
|
369
418
|
- spec/support/tmpdir.rb
|
370
|
-
- spec/
|
371
|
-
- spec/lib/fudge/
|
372
|
-
- spec/lib/fudge/
|
373
|
-
- spec/lib/fudge/
|
374
|
-
- spec/lib/fudge/
|
419
|
+
- spec/spec_helper.rb
|
420
|
+
- spec/lib/fudge/exceptions_spec.rb
|
421
|
+
- spec/lib/fudge/build_spec.rb
|
422
|
+
- spec/lib/fudge/runner_spec.rb
|
423
|
+
- spec/lib/fudge/parser_spec.rb
|
424
|
+
- spec/lib/fudge/tasks/flay_spec.rb
|
425
|
+
- spec/lib/fudge/tasks/bundler_spec.rb
|
426
|
+
- spec/lib/fudge/tasks/flog_spec.rb
|
427
|
+
- spec/lib/fudge/tasks/each_directory_spec.rb
|
375
428
|
- spec/lib/fudge/tasks/cane_spec.rb
|
376
|
-
- spec/lib/fudge/tasks/
|
429
|
+
- spec/lib/fudge/tasks/yard_spec.rb
|
377
430
|
- spec/lib/fudge/tasks/shell_spec.rb
|
431
|
+
- spec/lib/fudge/tasks/sub_process_spec.rb
|
432
|
+
- spec/lib/fudge/tasks/brakeman_spec.rb
|
378
433
|
- spec/lib/fudge/tasks/composite_task_spec.rb
|
379
|
-
- spec/lib/fudge/tasks/each_directory_spec.rb
|
380
|
-
- spec/lib/fudge/tasks/yard_spec.rb
|
381
|
-
- spec/lib/fudge/tasks/flog_spec.rb
|
382
434
|
- spec/lib/fudge/tasks/rspec_spec.rb
|
435
|
+
- spec/lib/fudge/tasks/task_spec.rb
|
436
|
+
- spec/lib/fudge/tasks/rake_spec.rb
|
383
437
|
- spec/lib/fudge/tasks/in_directory_spec.rb
|
384
|
-
- spec/lib/fudge/
|
385
|
-
- spec/lib/fudge/
|
386
|
-
- spec/lib/fudge/build_spec.rb
|
387
|
-
- spec/lib/fudge/description_spec.rb
|
388
|
-
- spec/lib/fudge/parser_spec.rb
|
389
|
-
- spec/lib/fudge/exceptions_spec.rb
|
438
|
+
- spec/lib/fudge/cli_spec.rb
|
439
|
+
- spec/lib/fudge/tasks_spec.rb
|
390
440
|
- spec/lib/fudge/with_directory_spec.rb
|
391
441
|
- spec/lib/fudge/output_checker_spec.rb
|
392
|
-
- spec/lib/fudge/
|
393
|
-
- spec/spec_helper.rb
|
442
|
+
- spec/lib/fudge/description_spec.rb
|
394
443
|
has_rdoc:
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: fd31308a43b51842e41a2c2977174a856526cecb
|
4
|
-
data.tar.gz: aca186535e2d484e08e66899de017a940fd3ac91
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 3a4bc875616456defb50dbebc3bba8dd5e7defb4210a1c55c4d76febff0cb21edcbc882626c720bccd348c15fc0a43839de12125d6ade029987d09c7a56bf265
|
7
|
-
data.tar.gz: 35e8923f58b306e8847aebf124d6d504792c39e4a2271830ba926f3eb2f6a7edebefe30dcb38fa58889eb56c33725eef0c8cdf813ef8cbca8171a2ec0cf5cc75
|