paraduct 1.0.0.beta1 → 1.0.0.beta2
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.
- checksums.yaml +4 -4
- data/.travis.yml +0 -1
- data/CHANGELOG.md +10 -0
- data/README.md +1 -1
- data/lib/paraduct/runner.rb +24 -21
- data/lib/paraduct/version.rb +1 -1
- data/paraduct.gemspec +8 -8
- data/spec/paraduct/cli_spec.rb +1 -1
- data/spec/spec_helper.rb +5 -4
- data/spec/support/contexts/stub_configuration.rb +2 -2
- metadata +34 -51
- data/.hound.yml +0 -25
- data/spec/.hound.yml +0 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7b356ec4fc1ad384a7b94c7bd2b154f333623896
|
4
|
+
data.tar.gz: 2cf58a48ce0c7fb0fd73b156d28b2b241dffc0b8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 85f5c6e65e5173ca899f65a2bdc7db0dc6af6b665b4adc536db906dec3e951e23b8217545a161654ab2da0eb5e054d114139e0006e964241a2b8844a9d74a182
|
7
|
+
data.tar.gz: 40ce010692cf0e3a889afde1362d3f027712404070bbe58e2990ef46b9e6774263fcdf18f446e00158e57481b24dff03fa646213490aa0f9f3556aedc70d1026
|
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -5,12 +5,22 @@
|
|
5
5
|
* https://github.com/sue445/paraduct/pull/77
|
6
6
|
* Run under current directory when work_dir is empty
|
7
7
|
* https://github.com/sue445/paraduct/pull/78
|
8
|
+
* Stop support ruby 1.9
|
9
|
+
* https://github.com/sue445/paraduct/pull/82
|
10
|
+
* Use specinfra insteadof PTY.spawn
|
11
|
+
* https://github.com/sue445/paraduct/pull/81
|
12
|
+
* some refactorings
|
13
|
+
* https://github.com/sue445/paraduct/pull/79
|
14
|
+
* https://github.com/sue445/paraduct/pull/80
|
8
15
|
|
9
16
|
## v0.0.3
|
10
17
|
[full changelog](http://github.com/sue445/paraduct/compare/v0.0.2...v0.0.3)
|
11
18
|
|
12
19
|
* relax exclude definition
|
13
20
|
* https://github.com/sue445/paraduct/pull/74
|
21
|
+
* some refactorings
|
22
|
+
* https://github.com/sue445/paraduct/pull/73
|
23
|
+
* https://github.com/sue445/paraduct/pull/76
|
14
24
|
|
15
25
|
## v0.0.2
|
16
26
|
[full changelog](http://github.com/sue445/paraduct/compare/v0.0.1...v0.0.2)
|
data/README.md
CHANGED
data/lib/paraduct/runner.rb
CHANGED
@@ -1,18 +1,21 @@
|
|
1
1
|
module Paraduct
|
2
2
|
require "pty"
|
3
|
+
require 'specinfra/core'
|
3
4
|
|
4
5
|
class Runner
|
5
6
|
attr_reader :script, :params, :base_job_dir
|
6
7
|
|
7
|
-
# @param
|
8
|
-
# @
|
9
|
-
# @
|
10
|
-
# @
|
11
|
-
def initialize(
|
12
|
-
@script =
|
13
|
-
@params =
|
14
|
-
@base_job_dir =
|
15
|
-
@job_id =
|
8
|
+
# @param script [String, Array<String>] script file, script(s)
|
9
|
+
# @param params [Hash{String => String}] value is quoted (ex. FOO=1 => FOO="1" )
|
10
|
+
# @param base_job_dir [String]
|
11
|
+
# @param job_id [String]
|
12
|
+
def initialize(script: nil, params: nil, base_job_dir: nil, job_id: nil)
|
13
|
+
@script = script
|
14
|
+
@params = params
|
15
|
+
@base_job_dir = base_job_dir
|
16
|
+
@job_id = job_id
|
17
|
+
|
18
|
+
@backend = Specinfra::Backend::Exec.new
|
16
19
|
end
|
17
20
|
|
18
21
|
def setup_dir
|
@@ -59,20 +62,20 @@ module Paraduct
|
|
59
62
|
private
|
60
63
|
|
61
64
|
def run_command(command)
|
62
|
-
|
65
|
+
command_result = @backend.run_command(command)
|
63
66
|
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
raise Paraduct::Errors::ProcessError.new(full_stdout, exit_status) if exit_status && !exit_status.success?
|
67
|
+
full_stdout = ""
|
68
|
+
command_result.stdout.each_line do |line|
|
69
|
+
line = line.strip
|
70
|
+
logger.info line
|
71
|
+
full_stdout << "#{line}\n"
|
72
|
+
end
|
73
|
+
command_result.stderr.each_line do |line|
|
74
|
+
line = line.strip
|
75
|
+
logger.info line
|
76
|
+
full_stdout << "#{line}\n"
|
75
77
|
end
|
78
|
+
raise Paraduct::Errors::ProcessError.new(full_stdout, command_result.exit_status) if command_result.failure?
|
76
79
|
|
77
80
|
full_stdout
|
78
81
|
end
|
data/lib/paraduct/version.rb
CHANGED
data/paraduct.gemspec
CHANGED
@@ -17,22 +17,22 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
19
|
spec.require_paths = ["lib"]
|
20
|
+
spec.required_ruby_version = ">= 2.0.0"
|
20
21
|
|
21
|
-
spec.add_dependency "activesupport", "
|
22
|
-
spec.add_dependency "colorize"
|
23
|
-
spec.add_dependency "rsync"
|
24
|
-
spec.add_dependency "
|
25
|
-
spec.add_dependency "
|
22
|
+
spec.add_dependency "activesupport", "~> 4.0"
|
23
|
+
spec.add_dependency "colorize"
|
24
|
+
spec.add_dependency "rsync"
|
25
|
+
spec.add_dependency "specinfra"
|
26
|
+
spec.add_dependency "thor"
|
27
|
+
spec.add_dependency "thread"
|
26
28
|
|
27
29
|
spec.add_development_dependency "bundler", ">= 1.5"
|
28
30
|
spec.add_development_dependency "codeclimate-test-reporter"
|
29
31
|
spec.add_development_dependency "coveralls"
|
30
32
|
spec.add_development_dependency "pry"
|
31
|
-
spec.add_development_dependency "pry-nav"
|
32
|
-
spec.add_development_dependency "pry-remote"
|
33
33
|
spec.add_development_dependency "rake", "~> 10.0"
|
34
34
|
spec.add_development_dependency "redcarpet"
|
35
|
-
spec.add_development_dependency "rspec", "~> 3.
|
35
|
+
spec.add_development_dependency "rspec", "~> 3.4"
|
36
36
|
spec.add_development_dependency "rspec-collection_matchers"
|
37
37
|
spec.add_development_dependency "rspec-its"
|
38
38
|
spec.add_development_dependency "rspec-retry"
|
data/spec/paraduct/cli_spec.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -3,10 +3,11 @@ if ENV["COVERAGE"]
|
|
3
3
|
require 'coveralls'
|
4
4
|
require 'codeclimate-test-reporter'
|
5
5
|
|
6
|
-
SimpleCov.formatter =
|
7
|
-
|
8
|
-
|
9
|
-
|
6
|
+
SimpleCov.formatter =
|
7
|
+
SimpleCov::Formatter::MultiFormatter.new([
|
8
|
+
CodeClimate::TestReporter::Formatter,
|
9
|
+
Coveralls::SimpleCov::Formatter
|
10
|
+
])
|
10
11
|
SimpleCov.start do
|
11
12
|
%w(/bin/ /vendor/ /spec/).each do |ignore_path|
|
12
13
|
add_filter(ignore_path)
|
@@ -8,8 +8,8 @@ shared_context :stub_configuration do
|
|
8
8
|
script: %q(echo "NAME1=${NAME1}, NAME2=${NAME2}"),
|
9
9
|
work_dir: "tmp/paraduct_workspace",
|
10
10
|
variables: {
|
11
|
-
|
12
|
-
|
11
|
+
"NAME1" => ["value1a", "value1b"],
|
12
|
+
"NAME2" => ["value2a", "value2b"],
|
13
13
|
},
|
14
14
|
}
|
15
15
|
end
|
metadata
CHANGED
@@ -1,107 +1,93 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: paraduct
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.0.
|
4
|
+
version: 1.0.0.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- sue445
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-03-
|
11
|
+
date: 2016-03-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - ">="
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 4.0.0
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - ">="
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 4.0.0
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: colorize
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
30
16
|
requirements:
|
31
17
|
- - "~>"
|
32
18
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0
|
19
|
+
version: '4.0'
|
34
20
|
type: :runtime
|
35
21
|
prerelease: false
|
36
22
|
version_requirements: !ruby/object:Gem::Requirement
|
37
23
|
requirements:
|
38
24
|
- - "~>"
|
39
25
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0
|
26
|
+
version: '4.0'
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
28
|
+
name: colorize
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
44
30
|
requirements:
|
45
|
-
- - "
|
31
|
+
- - ">="
|
46
32
|
- !ruby/object:Gem::Version
|
47
|
-
version:
|
33
|
+
version: '0'
|
48
34
|
type: :runtime
|
49
35
|
prerelease: false
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
51
37
|
requirements:
|
52
|
-
- - "
|
38
|
+
- - ">="
|
53
39
|
- !ruby/object:Gem::Version
|
54
|
-
version:
|
40
|
+
version: '0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
42
|
+
name: rsync
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
58
44
|
requirements:
|
59
|
-
- - "
|
45
|
+
- - ">="
|
60
46
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0
|
47
|
+
version: '0'
|
62
48
|
type: :runtime
|
63
49
|
prerelease: false
|
64
50
|
version_requirements: !ruby/object:Gem::Requirement
|
65
51
|
requirements:
|
66
|
-
- - "
|
52
|
+
- - ">="
|
67
53
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0
|
54
|
+
version: '0'
|
69
55
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
56
|
+
name: specinfra
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
72
58
|
requirements:
|
73
|
-
- - "
|
59
|
+
- - ">="
|
74
60
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0
|
61
|
+
version: '0'
|
76
62
|
type: :runtime
|
77
63
|
prerelease: false
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
79
65
|
requirements:
|
80
|
-
- - "
|
66
|
+
- - ">="
|
81
67
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0
|
68
|
+
version: '0'
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
70
|
+
name: thor
|
85
71
|
requirement: !ruby/object:Gem::Requirement
|
86
72
|
requirements:
|
87
73
|
- - ">="
|
88
74
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
90
|
-
type: :
|
75
|
+
version: '0'
|
76
|
+
type: :runtime
|
91
77
|
prerelease: false
|
92
78
|
version_requirements: !ruby/object:Gem::Requirement
|
93
79
|
requirements:
|
94
80
|
- - ">="
|
95
81
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
82
|
+
version: '0'
|
97
83
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
84
|
+
name: thread
|
99
85
|
requirement: !ruby/object:Gem::Requirement
|
100
86
|
requirements:
|
101
87
|
- - ">="
|
102
88
|
- !ruby/object:Gem::Version
|
103
89
|
version: '0'
|
104
|
-
type: :
|
90
|
+
type: :runtime
|
105
91
|
prerelease: false
|
106
92
|
version_requirements: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
@@ -109,21 +95,21 @@ dependencies:
|
|
109
95
|
- !ruby/object:Gem::Version
|
110
96
|
version: '0'
|
111
97
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
98
|
+
name: bundler
|
113
99
|
requirement: !ruby/object:Gem::Requirement
|
114
100
|
requirements:
|
115
101
|
- - ">="
|
116
102
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
103
|
+
version: '1.5'
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
107
|
requirements:
|
122
108
|
- - ">="
|
123
109
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
110
|
+
version: '1.5'
|
125
111
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
112
|
+
name: codeclimate-test-reporter
|
127
113
|
requirement: !ruby/object:Gem::Requirement
|
128
114
|
requirements:
|
129
115
|
- - ">="
|
@@ -137,7 +123,7 @@ dependencies:
|
|
137
123
|
- !ruby/object:Gem::Version
|
138
124
|
version: '0'
|
139
125
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
126
|
+
name: coveralls
|
141
127
|
requirement: !ruby/object:Gem::Requirement
|
142
128
|
requirements:
|
143
129
|
- - ">="
|
@@ -151,7 +137,7 @@ dependencies:
|
|
151
137
|
- !ruby/object:Gem::Version
|
152
138
|
version: '0'
|
153
139
|
- !ruby/object:Gem::Dependency
|
154
|
-
name: pry
|
140
|
+
name: pry
|
155
141
|
requirement: !ruby/object:Gem::Requirement
|
156
142
|
requirements:
|
157
143
|
- - ">="
|
@@ -198,14 +184,14 @@ dependencies:
|
|
198
184
|
requirements:
|
199
185
|
- - "~>"
|
200
186
|
- !ruby/object:Gem::Version
|
201
|
-
version: 3.
|
187
|
+
version: '3.4'
|
202
188
|
type: :development
|
203
189
|
prerelease: false
|
204
190
|
version_requirements: !ruby/object:Gem::Requirement
|
205
191
|
requirements:
|
206
192
|
- - "~>"
|
207
193
|
- !ruby/object:Gem::Version
|
208
|
-
version: 3.
|
194
|
+
version: '3.4'
|
209
195
|
- !ruby/object:Gem::Dependency
|
210
196
|
name: rspec-collection_matchers
|
211
197
|
requirement: !ruby/object:Gem::Requirement
|
@@ -286,7 +272,6 @@ extra_rdoc_files: []
|
|
286
272
|
files:
|
287
273
|
- ".coveralls.yml"
|
288
274
|
- ".gitignore"
|
289
|
-
- ".hound.yml"
|
290
275
|
- ".rspec"
|
291
276
|
- ".tachikoma.yml"
|
292
277
|
- ".travis.yml"
|
@@ -312,7 +297,6 @@ files:
|
|
312
297
|
- lib/paraduct/variable_converter.rb
|
313
298
|
- lib/paraduct/version.rb
|
314
299
|
- paraduct.gemspec
|
315
|
-
- spec/.hound.yml
|
316
300
|
- spec/.paraduct.yml
|
317
301
|
- spec/.paraduct_rsync_exclude.txt
|
318
302
|
- spec/paraduct/cli_spec.rb
|
@@ -345,7 +329,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
345
329
|
requirements:
|
346
330
|
- - ">="
|
347
331
|
- !ruby/object:Gem::Version
|
348
|
-
version:
|
332
|
+
version: 2.0.0
|
349
333
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
350
334
|
requirements:
|
351
335
|
- - ">"
|
@@ -358,7 +342,6 @@ signing_key:
|
|
358
342
|
specification_version: 4
|
359
343
|
summary: matrix test runner
|
360
344
|
test_files:
|
361
|
-
- spec/.hound.yml
|
362
345
|
- spec/.paraduct.yml
|
363
346
|
- spec/.paraduct_rsync_exclude.txt
|
364
347
|
- spec/paraduct/cli_spec.rb
|
data/.hound.yml
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
Style/LineLength:
|
2
|
-
Description: 'Limit lines to 130 characters.'
|
3
|
-
Max: 130
|
4
|
-
Style/SpaceInsideParens:
|
5
|
-
Enabled: false
|
6
|
-
Style/SpaceBeforeBlockBraces:
|
7
|
-
Enabled: false
|
8
|
-
StringLiterals:
|
9
|
-
Enabled: false
|
10
|
-
Style/TrailingComma:
|
11
|
-
Enabled: false
|
12
|
-
Style/BlockComments:
|
13
|
-
Enabled: false
|
14
|
-
Style/NilComparison:
|
15
|
-
Enabled: false
|
16
|
-
Style/Documentation:
|
17
|
-
Enabled: false
|
18
|
-
Style/RegexpLiteral:
|
19
|
-
Enabled: false
|
20
|
-
Style/SignalException:
|
21
|
-
Enabled: false
|
22
|
-
Style/CaseEquality:
|
23
|
-
Enabled: false
|
24
|
-
Style/SpaceBeforeComma:
|
25
|
-
Enabled: false
|