scout-gear 8.0.0 → 8.1.0

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.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/.vimproject +26 -9
  3. data/Rakefile +6 -1
  4. data/VERSION +1 -1
  5. data/bin/scout +15 -4
  6. data/doc/lib/scout/path.md +35 -0
  7. data/doc/lib/scout/workflow/task.md +13 -0
  8. data/lib/scout/cmd.rb +23 -24
  9. data/lib/scout/concurrent_stream.rb +36 -19
  10. data/lib/scout/exceptions.rb +10 -0
  11. data/lib/scout/log/color.rb +11 -11
  12. data/lib/scout/log/progress/report.rb +7 -5
  13. data/lib/scout/log/progress/util.rb +3 -0
  14. data/lib/scout/log/trap.rb +3 -3
  15. data/lib/scout/log.rb +64 -36
  16. data/lib/scout/meta_extension.rb +34 -0
  17. data/lib/scout/misc/digest.rb +11 -2
  18. data/lib/scout/misc/format.rb +12 -7
  19. data/lib/scout/misc/monitor.rb +11 -0
  20. data/lib/scout/misc/system.rb +48 -0
  21. data/lib/scout/named_array.rb +8 -0
  22. data/lib/scout/offsite/ssh.rb +171 -0
  23. data/lib/scout/offsite/step.rb +83 -0
  24. data/lib/scout/offsite/sync.rb +55 -0
  25. data/lib/scout/offsite.rb +3 -0
  26. data/lib/scout/open/lock.rb +5 -24
  27. data/lib/scout/open/remote.rb +12 -1
  28. data/lib/scout/open/stream.rb +110 -122
  29. data/lib/scout/open/util.rb +9 -0
  30. data/lib/scout/open.rb +5 -4
  31. data/lib/scout/path/find.rb +15 -10
  32. data/lib/scout/path/util.rb +5 -0
  33. data/lib/scout/persist/serialize.rb +3 -3
  34. data/lib/scout/persist.rb +1 -1
  35. data/lib/scout/resource/path.rb +4 -0
  36. data/lib/scout/resource/util.rb +10 -4
  37. data/lib/scout/tsv/dumper.rb +2 -0
  38. data/lib/scout/tsv/index.rb +28 -86
  39. data/lib/scout/tsv/open.rb +35 -14
  40. data/lib/scout/tsv/parser.rb +9 -2
  41. data/lib/scout/tsv/persist/tokyocabinet.rb +2 -0
  42. data/lib/scout/tsv/stream.rb +204 -0
  43. data/lib/scout/tsv/transformer.rb +11 -0
  44. data/lib/scout/tsv.rb +9 -2
  45. data/lib/scout/work_queue/worker.rb +2 -2
  46. data/lib/scout/work_queue.rb +36 -12
  47. data/lib/scout/workflow/definition.rb +2 -1
  48. data/lib/scout/workflow/deployment/orchestrator.rb +245 -0
  49. data/lib/scout/workflow/deployment.rb +1 -0
  50. data/lib/scout/workflow/step/dependencies.rb +37 -11
  51. data/lib/scout/workflow/step/file.rb +5 -0
  52. data/lib/scout/workflow/step/info.rb +5 -3
  53. data/lib/scout/workflow/step/load.rb +1 -1
  54. data/lib/scout/workflow/step/provenance.rb +1 -0
  55. data/lib/scout/workflow/step/status.rb +6 -8
  56. data/lib/scout/workflow/step.rb +75 -30
  57. data/lib/scout/workflow/task/dependencies.rb +114 -0
  58. data/lib/scout/workflow/task/inputs.rb +27 -13
  59. data/lib/scout/workflow/task.rb +9 -108
  60. data/lib/scout/workflow/usage.rb +40 -12
  61. data/lib/scout/workflow.rb +4 -2
  62. data/lib/scout-gear.rb +2 -0
  63. data/lib/scout.rb +6 -0
  64. data/scout-gear.gemspec +32 -7
  65. data/scout_commands/doc +37 -0
  66. data/scout_commands/find +1 -0
  67. data/scout_commands/offsite +30 -0
  68. data/scout_commands/update +29 -0
  69. data/scout_commands/workflow/info +15 -3
  70. data/scout_commands/workflow/install +102 -0
  71. data/scout_commands/workflow/task +26 -5
  72. data/test/scout/offsite/test_ssh.rb +15 -0
  73. data/test/scout/offsite/test_step.rb +33 -0
  74. data/test/scout/offsite/test_sync.rb +36 -0
  75. data/test/scout/offsite/test_task.rb +0 -0
  76. data/test/scout/resource/test_path.rb +6 -0
  77. data/test/scout/test_named_array.rb +6 -0
  78. data/test/scout/test_persist.rb +3 -2
  79. data/test/scout/test_tsv.rb +17 -0
  80. data/test/scout/test_work_queue.rb +63 -41
  81. data/test/scout/tsv/persist/test_adapter.rb +1 -1
  82. data/test/scout/tsv/test_index.rb +14 -0
  83. data/test/scout/tsv/test_parser.rb +14 -0
  84. data/test/scout/tsv/test_stream.rb +200 -0
  85. data/test/scout/tsv/test_transformer.rb +12 -0
  86. data/test/scout/workflow/deployment/test_orchestrator.rb +272 -0
  87. data/test/scout/workflow/step/test_dependencies.rb +68 -0
  88. data/test/scout/workflow/step/test_info.rb +18 -0
  89. data/test/scout/workflow/step/test_status.rb +0 -1
  90. data/test/scout/workflow/task/test_dependencies.rb +355 -0
  91. data/test/scout/workflow/task/test_inputs.rb +53 -0
  92. data/test/scout/workflow/test_definition.rb +18 -0
  93. data/test/scout/workflow/test_documentation.rb +24 -0
  94. data/test/scout/workflow/test_step.rb +109 -0
  95. data/test/scout/workflow/test_task.rb +0 -287
  96. data/test/test_scout.rb +9 -0
  97. metadata +83 -5
  98. data/scout_commands/workflow/task_old +0 -706
@@ -21,292 +21,5 @@ class TestTask < Test::Unit::TestCase
21
21
  assert_equal 2, s.run
22
22
  end
23
23
 
24
- def test_task_override_dep
25
- wf = Workflow.annonymous_workflow "TaskInputs" do
26
- input :input1, :integer
27
- task :step1 => :integer do |i| i end
28
-
29
- dep :step1
30
- input :input2, :integer, "Integer", 3
31
- task :step2 => :integer do |i| i * step(:step1).load end
32
- end
33
-
34
- assert_equal 6, wf.job(:step2, :input1 => 2, :input2 => 3).run
35
-
36
- step1_job = wf.job(:step1, :input1 => 6)
37
- assert_equal 18, wf.job(:step2, :input1 => 2, "TaskInputs#step1" => step1_job).run
38
-
39
- assert_equal 18, wf.job(:step2, :input1 => 2, "TaskInputs#step1" => step1_job).run
40
-
41
- assert_equal 18, wf.job(:step2, "TaskInputs#step1" => step1_job).run
42
- end
43
-
44
- def test_input_dep
45
- wf = Workflow.annonymous_workflow "TaskInputs" do
46
- input :v1, :integer
47
- input :v2, :integer
48
- task :sum => :integer do |v1,v2|
49
- v1 + v2
50
- end
51
-
52
- input :input1, :integer
53
- task :step1 => :integer do |i| i end
54
-
55
- input :input2, :integer
56
- task :step2 => :integer do |i| i end
57
-
58
- dep :step1, :input1 => 2
59
- dep :step2, :input2 => 3
60
- dep :sum, :v1 => :step1, :v2 => :step2
61
- task :my_sum => :integer do
62
- dependencies.last.load
63
- end
64
-
65
- dep :my_sum
66
- task :double => :integer do
67
- step(:my_sum).load * 2
68
- end
69
- end
70
-
71
- job = wf.job(:my_sum)
72
- assert_equal 5, job.run
73
- assert_equal Task::DEFAULT_NAME, job.name
74
-
75
- job = wf.job(:double)
76
- assert_equal Task::DEFAULT_NAME, job.name
77
-
78
- step1 = wf.job(:step1, :input1 => 3)
79
- assert_equal 3, step1.run
80
- job = wf.job(:double, "TaskInputs#step1" => step1)
81
- assert_equal 12, job.run
82
- assert_not_equal Task::DEFAULT_NAME, job.name
83
-
84
- step1 = wf.job(:step1, :input1 => 4)
85
- assert_equal 4, step1.run
86
- job = wf.job(:double, "TaskInputs#step1" => step1)
87
- assert_equal 14, job.run
88
- assert_not_equal Task::DEFAULT_NAME, job.name
89
- end
90
-
91
- def test_input_dep_override
92
- wf = Workflow.annonymous_workflow "TaskInputs" do
93
- input :v1, :integer
94
- input :v2, :integer
95
- task :sum => :integer do |v1,v2|
96
- v1 + v2
97
- end
98
-
99
- input :input1, :integer
100
- task :step1 => :integer do |i| i end
101
-
102
- input :input2, :integer
103
- task :step2 => :integer do |i| i end
104
-
105
- dep :step1
106
- dep :step2
107
- task :my_sum => :integer do
108
- dependencies.inject(0){|acc,d| acc += d.load }
109
- end
110
- end
111
-
112
- step2 = wf.job(:step2, :input2 => 4)
113
- job = wf.job(:my_sum, :input1 => 2, :input2 => 3, "TaskInputs#step2"=> step2)
114
- assert_equal 6, job.exec
115
-
116
- job = wf.job(:my_sum, :input1 => 2, :input2 => 3)
117
- assert_equal 5, job.run
118
-
119
- TmpFile.with_file(4) do |file|
120
- job = wf.job(:my_sum, :input1 => 2, :input2 => 3, "TaskInputs#step2"=> file)
121
- assert_equal 6, job.run
122
- assert_not_equal Task::DEFAULT_NAME, job.name
123
- end
124
- end
125
-
126
- def test_input_rename
127
- wf = Workflow.annonymous_workflow "TaskInputs" do
128
- input :v1, :integer
129
- input :v2, :integer
130
- task :sum => :integer do |v1,v2|
131
- v1 + v2
132
- end
133
-
134
- input :vv1, :integer
135
- input :vv2, :integer
136
- dep :sum, :v1 => :vv1, :v2 => :vv2
137
- task :my_sum => :integer do
138
- dependencies.last.load
139
- end
140
- end
141
-
142
- job = wf.job(:my_sum, :vv1 => 2, :vv2 => 3)
143
- assert_equal 5, job.run
144
- end
145
-
146
- def test_defaults_in_dep_block
147
- wf = Workflow.annonymous_workflow "TaskInputs" do
148
- input :v1, :integer
149
- input :v2, :integer
150
- task :sum => :integer do |v1,v2|
151
- v1 + v2
152
- end
153
-
154
- input :vv1, :integer
155
- input :vv2, :integer, nil, 3
156
- dep :sum, :v1 => :placeholder, :v2 => :placeholder do |jobname,options,dependencies|
157
- raise "Non-numeric value where integer expected" unless Numeric === options[:vv1]
158
- {inputs: {v1: options[:vv1], v2: options[:vv2]} }
159
- end
160
- task :my_sum => :integer do
161
- dependencies.last.load
162
- end
163
- end
164
-
165
- job = wf.job(:my_sum, :vv1 => "2")
166
- assert_equal 5, job.run
167
- end
168
-
169
- def test_dependency_jobname
170
- wf = Workflow.annonymous_workflow "TaskInputs" do
171
- input :v1, :integer
172
- input :v2, :integer
173
- task :sum => :integer do |v1,v2|
174
- v1 + v2
175
- end
176
-
177
- input :vv1, :integer
178
- input :vv2, :integer
179
- dep :sum, :v1 => :vv1, :v2 => :vv2, :jobname => "OTHER_NAME"
180
- task :my_sum => :integer do
181
- dependencies.last.load
182
- end
183
- end
184
-
185
- job = wf.job(:my_sum, "TEST_NAME", :vv1 => 2, :vv2 => 3)
186
- assert_equal 5, job.run
187
- assert_equal "TEST_NAME", job.clean_name
188
- assert_equal "OTHER_NAME", job.step(:sum).clean_name
189
- end
190
-
191
- def test_no_param_last_job
192
- wf = Workflow.annonymous_workflow "TaskInputs" do
193
- input :v1, :integer
194
- input :v2, :integer
195
- task :sum => :integer do |v1,v2|
196
- v1 + v2
197
- end
198
-
199
- dep :sum
200
- task :my_sum => :integer do
201
- dependencies.last.load
202
- end
203
- end
204
-
205
- job = wf.job(:my_sum, :v1 => 2, :v2 => "3")
206
- assert_equal 5, job.run
207
- refute_equal Task::DEFAULT_NAME, job.name
208
- end
209
-
210
- def test_no_param_last_job_block
211
- wf = Workflow.annonymous_workflow "TaskInputs" do
212
- input :v1, :integer
213
- input :v2, :integer
214
- task :sum => :integer do |v1,v2|
215
- v1 + v2
216
- end
217
-
218
- dep :sum do |jobname,options|
219
- {inputs: options}
220
- end
221
- task :my_sum => :integer do
222
- dependencies.last.load
223
- end
224
- end
225
-
226
- job = wf.job(:my_sum, :v1 => 2, :v2 => "3")
227
- assert_equal 5, job.run
228
- refute_equal Task::DEFAULT_NAME, job.name
229
- end
230
-
231
-
232
- def test_override_inputs_block
233
- wf = Workflow.annonymous_workflow "TaskInputs" do
234
- input :input1, :string
235
- task :step1 => :string do |i| i end
236
-
237
- dep :step1, :input1 => 1 do |id,options|
238
- {:inputs => options}
239
- end
240
- input :input2, :string
241
- task :step2 => :string do |i| step(:step1).load end
242
- end
243
-
244
- job = wf.job(:step2, :input1 => 2)
245
- assert_equal 1, job.run
246
- assert_equal Task::DEFAULT_NAME, job.name
247
- assert_not_equal Task::DEFAULT_NAME, job.step(:step1).name
248
- end
249
-
250
- def test_override_inputs_block_array
251
- wf = Workflow.annonymous_workflow "TaskInputs" do
252
- input :input1, :string
253
- task :step1 => :string do |i| i end
254
-
255
- dep :step1, :input1 => 1 do |id,options|
256
- [{:inputs => options}]
257
- end
258
- input :input2, :string
259
- task :step2 => :string do |i| step(:step1).load end
260
- end
261
-
262
- job = wf.job(:step2, :input1 => 2)
263
- assert_equal 1, job.run
264
- assert_equal Task::DEFAULT_NAME, job.name
265
- assert_not_equal Task::DEFAULT_NAME, job.step(:step1).name
266
- end
267
-
268
- def test_override_inputs
269
- wf = Workflow.annonymous_workflow "TaskInputs" do
270
- input :input1, :string
271
- task :step1 => :string do |i| i end
272
-
273
- dep :step1, :input1 => 1
274
- input :input2, :string
275
- task :step2 => :string do |i| step(:step1).load end
276
- end
277
-
278
- job = wf.job(:step2, :input1 => 2)
279
- assert_equal 1, job.run
280
- assert_equal Task::DEFAULT_NAME, job.name
281
- assert_not_equal Task::DEFAULT_NAME, job.step(:step1).name
282
- end
283
-
284
- def test_non_default_inputs
285
- wf = Workflow.annonymous_workflow "TaskInputs" do
286
- input :input1, :integer, "", 1
287
- input :input2, :integer, "", 0
288
- task :step1 => :string do |i1,i2| i1 + i2 end
289
-
290
- dep :step1, :input2 => 1
291
- task :step2 => :string do |i| step(:step1).load end
292
-
293
- dep :step2
294
- task :step3 => :string do |i| step(:step1).load end
295
- end
296
-
297
- job = wf.job(:step3, :input1 => 1)
298
- assert_equal Task::DEFAULT_NAME, job.name
299
- assert_not_equal Task::DEFAULT_NAME, job.step(:step1).name
300
- assert_equal 2, job.run
301
-
302
- job = wf.job(:step3, :input1 => 2)
303
- assert_equal 3, job.run
304
-
305
-
306
- job = wf.job(:step3)
307
- assert_equal Task::DEFAULT_NAME, job.name
308
- assert_not_equal Task::DEFAULT_NAME, job.step(:step1).name
309
- end
310
-
311
24
  end
312
25
 
@@ -0,0 +1,9 @@
1
+ require File.expand_path(__FILE__).sub(%r(/test/.*), '/test/test_helper.rb')
2
+ require File.expand_path(__FILE__).sub(%r(.*/test/), '').sub(/test_(.*)\.rb/,'\1')
3
+
4
+ class TestScout < Test::Unit::TestCase
5
+ def test_version
6
+ assert_equal 3, Scout.version.split(".").length
7
+ end
8
+ end
9
+
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scout-gear
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.0.0
4
+ version: 8.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-23 00:00:00.000000000 Z
11
+ date: 2023-06-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: term-ansicolor
@@ -24,6 +24,62 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: net-ssh
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: matrix
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: sys-proctable
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: RubyInline
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
27
83
  - !ruby/object:Gem::Dependency
28
84
  name: rdoc
29
85
  requirement: !ruby/object:Gem::Requirement
@@ -80,7 +136,8 @@ dependencies:
80
136
  - - ">="
81
137
  - !ruby/object:Gem::Version
82
138
  version: '0'
83
- description: Temporary files, logs, etc.
139
+ description: Temporary files, logs, path, resources, persistence, workflows, TSV,
140
+ etc.
84
141
  email: mikisvaz@gmail.com
85
142
  executables:
86
143
  - scout
@@ -97,6 +154,8 @@ files:
97
154
  - Rakefile
98
155
  - VERSION
99
156
  - bin/scout
157
+ - doc/lib/scout/path.md
158
+ - doc/lib/scout/workflow/task.md
100
159
  - lib/rbbt-scout.rb
101
160
  - lib/scout-gear.rb
102
161
  - lib/scout.rb
@@ -125,6 +184,10 @@ files:
125
184
  - lib/scout/misc/monitor.rb
126
185
  - lib/scout/misc/system.rb
127
186
  - lib/scout/named_array.rb
187
+ - lib/scout/offsite.rb
188
+ - lib/scout/offsite/ssh.rb
189
+ - lib/scout/offsite/step.rb
190
+ - lib/scout/offsite/sync.rb
128
191
  - lib/scout/open.rb
129
192
  - lib/scout/open/lock.rb
130
193
  - lib/scout/open/lock/lockfile.rb
@@ -167,6 +230,7 @@ files:
167
230
  - lib/scout/tsv/persist/fix_width_table.rb
168
231
  - lib/scout/tsv/persist/serialize.rb
169
232
  - lib/scout/tsv/persist/tokyocabinet.rb
233
+ - lib/scout/tsv/stream.rb
170
234
  - lib/scout/tsv/transformer.rb
171
235
  - lib/scout/tsv/traverse.rb
172
236
  - lib/scout/tsv/util.rb
@@ -180,6 +244,8 @@ files:
180
244
  - lib/scout/work_queue/worker.rb
181
245
  - lib/scout/workflow.rb
182
246
  - lib/scout/workflow/definition.rb
247
+ - lib/scout/workflow/deployment.rb
248
+ - lib/scout/workflow/deployment/orchestrator.rb
183
249
  - lib/scout/workflow/documentation.rb
184
250
  - lib/scout/workflow/step.rb
185
251
  - lib/scout/workflow/step/config.rb
@@ -191,19 +257,23 @@ files:
191
257
  - lib/scout/workflow/step/provenance.rb
192
258
  - lib/scout/workflow/step/status.rb
193
259
  - lib/scout/workflow/task.rb
260
+ - lib/scout/workflow/task/dependencies.rb
194
261
  - lib/scout/workflow/task/inputs.rb
195
262
  - lib/scout/workflow/usage.rb
196
263
  - lib/scout/workflow/util.rb
197
264
  - lib/workflow-scout.rb
198
265
  - scout-gear.gemspec
199
266
  - scout_commands/alias
267
+ - scout_commands/doc
200
268
  - scout_commands/find
201
269
  - scout_commands/glob
270
+ - scout_commands/offsite
202
271
  - scout_commands/rbbt
272
+ - scout_commands/update
203
273
  - scout_commands/workflow/info
274
+ - scout_commands/workflow/install
204
275
  - scout_commands/workflow/list
205
276
  - scout_commands/workflow/task
206
- - scout_commands/workflow/task_old
207
277
  - share/color/color_names
208
278
  - share/color/diverging_colors.hex
209
279
  - share/software/install_helpers
@@ -215,6 +285,10 @@ files:
215
285
  - test/scout/misc/test_filesystem.rb
216
286
  - test/scout/misc/test_insist.rb
217
287
  - test/scout/misc/test_system.rb
288
+ - test/scout/offsite/test_ssh.rb
289
+ - test/scout/offsite/test_step.rb
290
+ - test/scout/offsite/test_sync.rb
291
+ - test/scout/offsite/test_task.rb
218
292
  - test/scout/open/test_lock.rb
219
293
  - test/scout/open/test_remote.rb
220
294
  - test/scout/open/test_stream.rb
@@ -259,6 +333,7 @@ files:
259
333
  - test/scout/tsv/test_open.rb
260
334
  - test/scout/tsv/test_parser.rb
261
335
  - test/scout/tsv/test_persist.rb
336
+ - test/scout/tsv/test_stream.rb
262
337
  - test/scout/tsv/test_transformer.rb
263
338
  - test/scout/tsv/test_traverse.rb
264
339
  - test/scout/tsv/test_util.rb
@@ -269,11 +344,13 @@ files:
269
344
  - test/scout/tsv/util/test_unzip.rb
270
345
  - test/scout/work_queue/test_socket.rb
271
346
  - test/scout/work_queue/test_worker.rb
347
+ - test/scout/workflow/deployment/test_orchestrator.rb
272
348
  - test/scout/workflow/step/test_dependencies.rb
273
349
  - test/scout/workflow/step/test_info.rb
274
350
  - test/scout/workflow/step/test_load.rb
275
351
  - test/scout/workflow/step/test_provenance.rb
276
352
  - test/scout/workflow/step/test_status.rb
353
+ - test/scout/workflow/task/test_dependencies.rb
277
354
  - test/scout/workflow/task/test_inputs.rb
278
355
  - test/scout/workflow/test_definition.rb
279
356
  - test/scout/workflow/test_documentation.rb
@@ -283,6 +360,7 @@ files:
283
360
  - test/scout/workflow/test_util.rb
284
361
  - test/test_helper.rb
285
362
  - test/test_scout-gear.rb
363
+ - test/test_scout.rb
286
364
  homepage: http://github.com/mikisvaz/scout-gear
287
365
  licenses:
288
366
  - MIT
@@ -302,7 +380,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
302
380
  - !ruby/object:Gem::Version
303
381
  version: '0'
304
382
  requirements: []
305
- rubygems_version: 3.4.11
383
+ rubygems_version: 3.4.13
306
384
  signing_key:
307
385
  specification_version: 4
308
386
  summary: basic gear for scouts