scout-gear 9.1.0 → 10.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (122) hide show
  1. checksums.yaml +4 -4
  2. data/.vimproject +1 -78
  3. data/Rakefile +2 -2
  4. data/VERSION +1 -1
  5. data/lib/scout/offsite/exceptions.rb +9 -0
  6. data/lib/scout/offsite/ssh.rb +1 -0
  7. data/lib/scout/semaphore.rb +2 -0
  8. data/lib/scout/tsv/open.rb +1 -1
  9. data/lib/scout/tsv/parser.rb +1 -1
  10. data/lib/scout/tsv/persist/adapter.rb +2 -2
  11. data/lib/scout/tsv/persist.rb +1 -0
  12. data/lib/scout/tsv/util/sort.rb +74 -0
  13. data/lib/scout/tsv/util.rb +1 -0
  14. data/lib/scout/tsv.rb +1 -1
  15. data/lib/scout/work_queue/exceptions.rb +18 -0
  16. data/lib/scout/work_queue.rb +1 -0
  17. data/lib/scout/workflow/definition.rb +1 -1
  18. data/lib/scout/workflow/step/config.rb +1 -1
  19. data/lib/scout/workflow/step/status.rb +1 -0
  20. data/lib/scout/workflow/step.rb +49 -49
  21. data/lib/scout/workflow/task/inputs.rb +1 -1
  22. data/lib/scout/workflow/task.rb +2 -2
  23. data/lib/scout/workflow.rb +2 -2
  24. data/lib/scout-gear.rb +1 -10
  25. data/scout-gear.gemspec +9 -97
  26. data/scout_commands/workflow/task +3 -3
  27. data/test/scout/tsv/test_open.rb +1 -1
  28. data/test/scout/tsv/util/test_sort.rb +23 -0
  29. data/test/scout/workflow/task/test_inputs.rb +0 -4
  30. metadata +8 -109
  31. data/lib/scout/cmd.rb +0 -347
  32. data/lib/scout/concurrent_stream.rb +0 -284
  33. data/lib/scout/config.rb +0 -168
  34. data/lib/scout/exceptions.rb +0 -151
  35. data/lib/scout/indiferent_hash/case_insensitive.rb +0 -30
  36. data/lib/scout/indiferent_hash/options.rb +0 -115
  37. data/lib/scout/indiferent_hash.rb +0 -96
  38. data/lib/scout/log/color.rb +0 -224
  39. data/lib/scout/log/color_class.rb +0 -269
  40. data/lib/scout/log/fingerprint.rb +0 -69
  41. data/lib/scout/log/progress/report.rb +0 -244
  42. data/lib/scout/log/progress/util.rb +0 -173
  43. data/lib/scout/log/progress.rb +0 -106
  44. data/lib/scout/log/trap.rb +0 -107
  45. data/lib/scout/log.rb +0 -441
  46. data/lib/scout/meta_extension.rb +0 -100
  47. data/lib/scout/misc/digest.rb +0 -63
  48. data/lib/scout/misc/filesystem.rb +0 -25
  49. data/lib/scout/misc/format.rb +0 -255
  50. data/lib/scout/misc/helper.rb +0 -31
  51. data/lib/scout/misc/insist.rb +0 -56
  52. data/lib/scout/misc/monitor.rb +0 -66
  53. data/lib/scout/misc/system.rb +0 -73
  54. data/lib/scout/misc.rb +0 -10
  55. data/lib/scout/named_array.rb +0 -138
  56. data/lib/scout/open/lock/lockfile.rb +0 -587
  57. data/lib/scout/open/lock.rb +0 -68
  58. data/lib/scout/open/remote.rb +0 -135
  59. data/lib/scout/open/stream.rb +0 -491
  60. data/lib/scout/open/util.rb +0 -244
  61. data/lib/scout/open.rb +0 -170
  62. data/lib/scout/path/find.rb +0 -204
  63. data/lib/scout/path/tmpfile.rb +0 -8
  64. data/lib/scout/path/util.rb +0 -127
  65. data/lib/scout/path.rb +0 -51
  66. data/lib/scout/persist/open.rb +0 -17
  67. data/lib/scout/persist/path.rb +0 -15
  68. data/lib/scout/persist/serialize.rb +0 -157
  69. data/lib/scout/persist.rb +0 -104
  70. data/lib/scout/resource/open.rb +0 -8
  71. data/lib/scout/resource/path.rb +0 -80
  72. data/lib/scout/resource/produce/rake.rb +0 -69
  73. data/lib/scout/resource/produce.rb +0 -151
  74. data/lib/scout/resource/scout.rb +0 -3
  75. data/lib/scout/resource/software.rb +0 -178
  76. data/lib/scout/resource/util.rb +0 -59
  77. data/lib/scout/resource.rb +0 -41
  78. data/lib/scout/simple_opt/accessor.rb +0 -54
  79. data/lib/scout/simple_opt/doc.rb +0 -126
  80. data/lib/scout/simple_opt/get.rb +0 -57
  81. data/lib/scout/simple_opt/parse.rb +0 -67
  82. data/lib/scout/simple_opt/setup.rb +0 -26
  83. data/lib/scout/simple_opt.rb +0 -5
  84. data/lib/scout/tmpfile.rb +0 -129
  85. data/test/scout/indiferent_hash/test_case_insensitive.rb +0 -16
  86. data/test/scout/indiferent_hash/test_options.rb +0 -46
  87. data/test/scout/log/test_progress.rb +0 -108
  88. data/test/scout/misc/test_digest.rb +0 -30
  89. data/test/scout/misc/test_filesystem.rb +0 -30
  90. data/test/scout/misc/test_insist.rb +0 -13
  91. data/test/scout/misc/test_system.rb +0 -21
  92. data/test/scout/open/test_lock.rb +0 -52
  93. data/test/scout/open/test_remote.rb +0 -25
  94. data/test/scout/open/test_stream.rb +0 -676
  95. data/test/scout/open/test_util.rb +0 -73
  96. data/test/scout/path/test_find.rb +0 -119
  97. data/test/scout/path/test_util.rb +0 -22
  98. data/test/scout/persist/test_open.rb +0 -37
  99. data/test/scout/persist/test_path.rb +0 -37
  100. data/test/scout/persist/test_serialize.rb +0 -114
  101. data/test/scout/resource/test_path.rb +0 -46
  102. data/test/scout/resource/test_produce.rb +0 -92
  103. data/test/scout/resource/test_software.rb +0 -24
  104. data/test/scout/resource/test_util.rb +0 -36
  105. data/test/scout/simple_opt/test_doc.rb +0 -16
  106. data/test/scout/simple_opt/test_get.rb +0 -11
  107. data/test/scout/simple_opt/test_parse.rb +0 -10
  108. data/test/scout/simple_opt/test_setup.rb +0 -77
  109. data/test/scout/test_cmd.rb +0 -85
  110. data/test/scout/test_concurrent_stream.rb +0 -29
  111. data/test/scout/test_config.rb +0 -66
  112. data/test/scout/test_indiferent_hash.rb +0 -26
  113. data/test/scout/test_log.rb +0 -32
  114. data/test/scout/test_meta_extension.rb +0 -80
  115. data/test/scout/test_misc.rb +0 -6
  116. data/test/scout/test_named_array.rb +0 -43
  117. data/test/scout/test_open.rb +0 -146
  118. data/test/scout/test_path.rb +0 -54
  119. data/test/scout/test_persist.rb +0 -186
  120. data/test/scout/test_resource.rb +0 -26
  121. data/test/scout/test_tmpfile.rb +0 -53
  122. /data/test/scout/{log/test_color.rb → test_offsite.rb} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bbe916f2d82030e26b1049319216f45341b7e7f7410df65e3953c0a733af2c21
4
- data.tar.gz: 152b31b552f90b2bb06aed9bc3cdd12a3bff48746468e52b39e5754977a40f90
3
+ metadata.gz: ab089af23ec3cb6d23db1190f712d2a981db96e818572aa5b561227a9601b9b8
4
+ data.tar.gz: d72662def6d6b7207d015d7cea613a1882578efe201ed391f79d37027ab7c70e
5
5
  SHA512:
6
- metadata.gz: 51f41961b2a95d847e4a60a70a2774c34098c4fa502818be8b9d5ec30ced53fce81d02862a1104498060c04a88138ca329ae82ba09fa264b6d9ec0daca80a3a4
7
- data.tar.gz: 113d51ff9798416073a86debb07ce47708254a4594e5785cfc4543794c3ff4e09da8809c29d67f64d57aeacd30c1c2ad49998d5eca4f544f3381991c296db1c5
6
+ metadata.gz: d5b67fdc030ad2ed3dd4d9da47d7f12068b71f14a1ae390f65c411bc2e835ac2da1648fccb554cbda4a3a56bdf6b16fc63080620453e75481590622cfd883247
7
+ data.tar.gz: 97fa38ef8db895d3a8aa05d2e4e521bb98d28924b389429994f6e98bceb7bfa7ad74920676c17b8b124bf288700e80078909ea20a84c3c0b24efd0cf7b0632cb
data/.vimproject CHANGED
@@ -28,81 +28,6 @@ scout-gear=/$PWD filter="*.rb *.yaml" {
28
28
  rbbt-scout.rb
29
29
  scout.rb
30
30
  scout=scout{
31
- meta_extension.rb
32
- exceptions.rb
33
-
34
- misc.rb
35
- misc=misc{
36
- format.rb
37
- insist.rb
38
- digest.rb
39
- filesystem.rb
40
- monitor.rb
41
- system.rb
42
- }
43
- named_array.rb
44
- indiferent_hash.rb
45
- indiferent_hash=indiferent_hash{
46
- case_insensitive.rb
47
- options.rb
48
- }
49
- log.rb
50
- log=log{
51
- color.rb
52
- color_class.rb
53
- fingerprint.rb
54
- progress.rb
55
- progress=progress{
56
- report.rb
57
- util.rb
58
- }
59
- trap.rb
60
- }
61
- tmpfile.rb
62
- simple_opt.rb
63
- simple_opt=simple_opt{
64
- accessor.rb
65
- doc.rb
66
- parse.rb
67
- get.rb
68
- setup.rb
69
- }
70
- path.rb
71
- path=path{
72
- find.rb
73
- util.rb
74
- tmpfile.rb
75
- }
76
- concurrent_stream.rb
77
- cmd.rb
78
- open.rb
79
- open=open{
80
- lock.rb
81
- lock=lock{
82
- lockfile.rb
83
- }
84
- stream.rb
85
- remote.rb
86
- util.rb
87
- }
88
- resource.rb
89
- resource=resource{
90
- produce.rb
91
- produce=produce{
92
- rake.rb
93
- }
94
- software.rb
95
- scout.rb
96
- util.rb
97
- path.rb
98
- }
99
- config.rb
100
- persist.rb
101
- persist=persist{
102
- serialize.rb
103
- open.rb
104
- path.rb
105
- }
106
31
  workflow.rb
107
32
  workflow=workflow{
108
33
  definition.rb
@@ -146,6 +71,7 @@ scout-gear=/$PWD filter="*.rb *.yaml" {
146
71
  process.rb
147
72
  unzip.rb
148
73
  reorder.rb
74
+ sort.rb
149
75
  }
150
76
  parser.rb
151
77
  dumper.rb
@@ -173,9 +99,6 @@ scout-gear=/$PWD filter="*.rb *.yaml" {
173
99
  sync.rb
174
100
  step.rb
175
101
  }
176
- hpc=hpc{
177
- slurm.rb
178
- }
179
102
  }
180
103
  }
181
104
  test=test {
data/Rakefile CHANGED
@@ -20,10 +20,9 @@ Juwelier::Tasks.new do |gem|
20
20
  # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
21
21
  # gem.add_runtime_dependency 'jabber4r', '> 0.1'
22
22
  # gem.add_development_dependency 'rspec', '> 1.2.3'
23
- gem.add_runtime_dependency 'term-ansicolor'
23
+ gem.add_runtime_dependency 'scout-essentials'
24
24
  gem.add_runtime_dependency 'net-ssh'
25
25
  gem.add_runtime_dependency 'matrix'
26
- gem.add_runtime_dependency 'sys-proctable'
27
26
  gem.add_runtime_dependency 'RubyInline'
28
27
  #gem.add_runtime_dependency 'tokyocabinet'
29
28
 
@@ -36,6 +35,7 @@ Juwelier::RubygemsDotOrgTasks.new
36
35
 
37
36
  require 'rake/testtask'
38
37
  Rake::TestTask.new(:test) do |test|
38
+ ENV["SCOUT_LOG"] = "NONE"
39
39
  test.libs << 'lib' << 'test'
40
40
  test.pattern = 'test/**/test_*.rb'
41
41
  test.verbose = true
data/VERSION CHANGED
@@ -1 +1 @@
1
- 9.1.0
1
+ 10.1.0
@@ -0,0 +1,9 @@
1
+ class SSHProcessFailed < StandardError
2
+ attr_accessor :host, :cmd
3
+ def initialize(host, cmd)
4
+ @host = host
5
+ @cmd = cmd
6
+ message = "SSH server #{host} failed cmd '#{cmd}'"
7
+ super(message)
8
+ end
9
+ end
@@ -1,4 +1,5 @@
1
1
  require 'net/ssh'
2
+ require_relative 'exceptions'
2
3
 
3
4
  class SSHLine
4
5
  class << self
@@ -8,6 +8,8 @@ end
8
8
 
9
9
  if continue
10
10
  module ScoutSemaphore
11
+ class SemaphoreInterrupted < TryAgain; end
12
+
11
13
  inline(:C) do |builder|
12
14
  builder.prefix <<-EOF
13
15
  #include <unistd.h>
@@ -1,4 +1,4 @@
1
- require_relative '../open'
1
+ require 'scout/open'
2
2
  require_relative '../work_queue'
3
3
 
4
4
  module MultipleResult
@@ -1,4 +1,4 @@
1
- require_relative '../named_array'
1
+ require 'scout/named_array'
2
2
  module TSV
3
3
  def self.cast_value(value, cast)
4
4
  if Array === value
@@ -1,5 +1,5 @@
1
- require_relative '../../open/lock'
2
- require_relative '../../meta_extension'
1
+ require 'scout/open/lock'
2
+ require 'scout/meta_extension'
3
3
  require_relative 'serialize'
4
4
 
5
5
  module TSVAdapter
@@ -1,3 +1,4 @@
1
+ require 'scout/persist'
1
2
  require_relative 'persist/adapter'
2
3
  require_relative 'persist/tokyocabinet'
3
4
 
@@ -0,0 +1,74 @@
1
+ module TSV
2
+ def sort_by(field = nil, just_keys = false, &block)
3
+ field = :all if field.nil?
4
+
5
+ if field == :all
6
+ elems = collect
7
+ else
8
+ elems = []
9
+ case type
10
+ when :single
11
+ through :key, field do |key, field|
12
+ elems << [key, field]
13
+ end
14
+ when :list, :flat
15
+ through :key, field do |key, fields|
16
+ elems << [key, fields.first]
17
+ end
18
+ when :double
19
+ through :key, field do |key, fields|
20
+ elems << [key, fields.first]
21
+ end
22
+ end
23
+ end
24
+
25
+ if not block_given?
26
+ if fields == :all
27
+ if just_keys
28
+ keys = elems.sort_by{|key, value| key }.collect{|key, values| key}
29
+ keys = prepare_entity(keys, key_field, entity_options.merge(:dup_array => true))
30
+ else
31
+ elems.sort_by{|key, value| key }
32
+ end
33
+ else
34
+ sorted = elems.sort do |a, b|
35
+ a_value = a.last
36
+ b_value = b.last
37
+ a_empty = a_value.nil? or (a_value.respond_to?(:empty?) and a_value.empty?)
38
+ b_empty = b_value.nil? or (b_value.respond_to?(:empty?) and b_value.empty?)
39
+ case
40
+ when (a_empty and b_empty)
41
+ 0
42
+ when a_empty
43
+ -1
44
+ when b_empty
45
+ 1
46
+ when Array === a_value
47
+ if a_value.length == 1 and b_value.length == 1
48
+ a_value.first <=> b_value.first
49
+ else
50
+ a_value.length <=> b_value.length
51
+ end
52
+ else
53
+ a_value <=> b_value
54
+ end
55
+ end
56
+ if just_keys
57
+ keys = sorted.collect{|key, value| key}
58
+ keys = prepare_entity(keys, key_field, entity_options.merge(:dup_array => true)) unless @unnamed
59
+ keys
60
+ else
61
+ sorted.collect{|key, value| [key, self[key]]}
62
+ end
63
+ end
64
+ else
65
+ if just_keys
66
+ keys = elems.sort_by(&block).collect{|key, value| key}
67
+ keys = prepare_entity(keys, key_field, entity_options.merge(:dup_array => true)) unless @unnamed
68
+ keys
69
+ else
70
+ elems.sort_by(&block).collect{|key, value| [key, self[key]]}
71
+ end
72
+ end
73
+ end
74
+ end
@@ -6,6 +6,7 @@ require_relative 'util/process'
6
6
  require_relative 'util/select'
7
7
  require_relative 'util/reorder'
8
8
  require_relative 'util/unzip'
9
+ require_relative 'util/sort'
9
10
  module TSV
10
11
  def self.identify_field(key_field, fields, name, strict: nil)
11
12
  return :key if name == :key || (! strict && NamedArray.field_match(key_field, name))
data/lib/scout/tsv.rb CHANGED
@@ -1,4 +1,4 @@
1
- require_relative 'meta_extension'
1
+ require 'scout/meta_extension'
2
2
  require_relative 'tsv/util'
3
3
  require_relative 'tsv/parser'
4
4
  require_relative 'tsv/dumper'
@@ -0,0 +1,18 @@
1
+ class DoneProcessing < Exception
2
+ attr_accessor :pid
3
+ def initialize(pid = Process.pid)
4
+ @pid = pid
5
+ end
6
+
7
+ def message
8
+ "Done processing pid #{pid}"
9
+ end
10
+ end
11
+
12
+ class WorkerException < ScoutException
13
+ attr_accessor :worker_exception, :pid
14
+ def initialize(worker_exception, pid)
15
+ @worker_exception = worker_exception
16
+ @pid = pid
17
+ end
18
+ end
@@ -1,5 +1,6 @@
1
1
  require_relative 'work_queue/socket'
2
2
  require_relative 'work_queue/worker'
3
+ require_relative 'work_queue/exceptions'
3
4
  require 'timeout'
4
5
 
5
6
  class WorkQueue
@@ -1,4 +1,4 @@
1
- require_relative '../meta_extension'
1
+ require 'scout/meta_extension'
2
2
 
3
3
  module Workflow
4
4
  extend MetaExtension
@@ -1,4 +1,4 @@
1
- require_relative '../../config'
1
+ require 'scout/config'
2
2
 
3
3
  class Step
4
4
  def config(key, *tokens)
@@ -31,6 +31,7 @@ class Step
31
31
  Open.rm tmp_path if Open.exist?(tmp_path)
32
32
  Open.rm info_file if Open.exist?(info_file)
33
33
  Open.rm_rf files_dir if Open.exist?(files_dir)
34
+ self
34
35
  end
35
36
 
36
37
  def self.clean(file)
@@ -1,5 +1,5 @@
1
- require_relative '../path'
2
- require_relative '../persist'
1
+ require 'scout/path'
2
+ require 'scout/persist'
3
3
  require_relative 'step/info'
4
4
  require_relative 'step/status'
5
5
  require_relative 'step/load'
@@ -124,62 +124,62 @@ class Step
124
124
  return @result || self.load if done?
125
125
  prepare_dependencies
126
126
  run_dependencies
127
- @result =
128
- begin
129
- Persist.persist(name, type, :path => path, :tee_copies => tee_copies) do
130
- clear_info
131
- input_names = (task.respond_to?(:inputs) && task.inputs) ? task.inputs.collect{|name,_| name} : []
132
- merge_info :status => :start, :start => Time.now,
133
- :pid => Process.pid, :pid_hostname => Misc.hostname,
134
- :inputs => MetaExtension.purge(inputs), :input_names => input_names, :type => type,
135
- :dependencies => dependencies.collect{|d| d.path }
136
-
137
- @result = exec
138
-
139
- if @result.nil? && File.exist?(self.tmp_path) && ! File.exist?(self.path)
140
- Open.mv self.tmp_path, self.path
141
- else
142
- @result = @result.stream if @result.respond_to?(:stream)
143
- end
127
+ begin
128
+ @result = Persist.persist(name, type, :path => path, :tee_copies => tee_copies) do
129
+ clear_info
130
+ input_names = (task.respond_to?(:inputs) && task.inputs) ? task.inputs.collect{|name,_| name} : []
131
+ merge_info :status => :start, :start => Time.now,
132
+ :pid => Process.pid, :pid_hostname => Misc.hostname,
133
+ :inputs => MetaExtension.purge(inputs), :input_names => input_names, :type => type,
134
+ :dependencies => dependencies.collect{|d| d.path }
135
+
136
+ @exec_result = exec
137
+
138
+ if @exec_result.nil? && File.exist?(self.tmp_path) && ! File.exist?(self.path)
139
+ Open.mv self.tmp_path, self.path
140
+ else
141
+ @exec_result = @exec_result.stream if @exec_result.respond_to?(:stream)
142
+ end
144
143
 
145
- @result
144
+ @exec_result
146
145
 
147
- if (IO === @result || StringIO === @result) && (ENV["SCOUT_NO_STREAM"] == "true" || ! stream)
148
- Open.sensible_write(self.path, @result)
149
- @result = nil
150
- else
151
- @result
152
- end
146
+ if (IO === @exec_result || StringIO === @exec_result) && (ENV["SCOUT_NO_STREAM"] == "true" || ! stream)
147
+ Open.sensible_write(self.path, @exec_result)
148
+ @exec_result = nil
149
+ else
150
+ @exec_result
153
151
  end
154
- rescue Exception => e
155
- merge_info :status => :error, :exception => e, :end => Time.now
156
- abort_dependencies
157
- raise e
158
- ensure
159
- if ! (error? || aborted?)
160
- if streaming?
161
- ConcurrentStream.setup(@result) do
162
- merge_info :status => :done, :end => Time.now
163
- end
152
+ end
153
+ rescue Exception => e
154
+ merge_info :status => :error, :exception => e, :end => Time.now
155
+ abort_dependencies
156
+ raise e
157
+ ensure
158
+ if ! (error? || aborted?)
159
+ if streaming?
160
+ ConcurrentStream.setup(@result) do
161
+ merge_info :status => :done, :end => Time.now
162
+ end
164
163
 
165
- @result.abort_callback = proc do |exception|
166
- if exception.nil? || Aborted === exception || Interrupt === exception
167
- merge_info :status => :aborted, :end => Time.now
168
- else
169
- begin
170
- merge_info :status => :error, :exception => exception, :end => Time.now
171
- rescue Exception
172
- Log.exception $!
173
- end
164
+ @result.abort_callback = proc do |exception|
165
+ if exception.nil? || Aborted === exception || Interrupt === exception
166
+ merge_info :status => :aborted, :end => Time.now
167
+ else
168
+ begin
169
+ merge_info :status => :error, :exception => exception, :end => Time.now
170
+ rescue Exception
171
+ Log.exception $!
174
172
  end
175
173
  end
176
-
177
- log :streaming
178
- else
179
- merge_info :status => :done, :end => Time.now
180
174
  end
175
+
176
+
177
+ log :streaming
178
+ else
179
+ merge_info :status => :done, :end => Time.now
181
180
  end
182
181
  end
182
+ end
183
183
  end
184
184
 
185
185
  def fork
@@ -1,4 +1,4 @@
1
- require_relative '../../named_array'
1
+ require 'scout/named_array'
2
2
  module Task
3
3
  def self.format_input(value, type, options = {})
4
4
  return value if IO === value || StringIO === value || Step === value
@@ -1,5 +1,5 @@
1
- require_relative '../meta_extension'
2
- require_relative '../named_array'
1
+ require 'scout/meta_extension'
2
+ require 'scout/named_array'
3
3
  require_relative 'step'
4
4
  require_relative 'task/inputs'
5
5
  require_relative 'task/dependencies'
@@ -6,8 +6,8 @@ require_relative 'workflow/documentation'
6
6
  require_relative 'workflow/usage'
7
7
  require_relative 'workflow/deployment'
8
8
 
9
- require_relative 'resource'
10
- require_relative 'resource/scout'
9
+ require 'scout/resource'
10
+ require 'scout/resource/scout'
11
11
 
12
12
  module Workflow
13
13
  class << self
data/lib/scout-gear.rb CHANGED
@@ -1,12 +1,3 @@
1
- require_relative 'scout/exceptions'
2
- require_relative 'scout/indiferent_hash'
3
- require_relative 'scout/tmpfile'
4
- require_relative 'scout/log'
5
- require_relative 'scout/path'
6
- require_relative 'scout/simple_opt'
7
- require_relative 'scout/resource'
8
- require_relative 'scout/resource/scout'
9
- require_relative 'scout/persist'
1
+ require 'scout-essentials'
10
2
  require_relative 'scout/tsv'
11
- require_relative 'scout/config'
12
3
  require_relative 'scout/offsite'
data/scout-gear.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: scout-gear 9.1.0 ruby lib
5
+ # stub: scout-gear 10.1.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "scout-gear".freeze
9
- s.version = "9.1.0"
9
+ s.version = "10.1.0"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Miguel Vazquez".freeze]
14
- s.date = "2023-06-30"
14
+ s.date = "2023-07-07"
15
15
  s.description = "Temporary files, logs, path, resources, persistence, workflows, TSV, etc.".freeze
16
16
  s.email = "mikisvaz@gmail.com".freeze
17
17
  s.executables = ["scout".freeze]
@@ -33,65 +33,12 @@ Gem::Specification.new do |s|
33
33
  "lib/rbbt-scout.rb",
34
34
  "lib/scout-gear.rb",
35
35
  "lib/scout.rb",
36
- "lib/scout/cmd.rb",
37
- "lib/scout/concurrent_stream.rb",
38
- "lib/scout/config.rb",
39
- "lib/scout/exceptions.rb",
40
- "lib/scout/indiferent_hash.rb",
41
- "lib/scout/indiferent_hash/case_insensitive.rb",
42
- "lib/scout/indiferent_hash/options.rb",
43
- "lib/scout/log.rb",
44
- "lib/scout/log/color.rb",
45
- "lib/scout/log/color_class.rb",
46
- "lib/scout/log/fingerprint.rb",
47
- "lib/scout/log/progress.rb",
48
- "lib/scout/log/progress/report.rb",
49
- "lib/scout/log/progress/util.rb",
50
- "lib/scout/log/trap.rb",
51
- "lib/scout/meta_extension.rb",
52
- "lib/scout/misc.rb",
53
- "lib/scout/misc/digest.rb",
54
- "lib/scout/misc/filesystem.rb",
55
- "lib/scout/misc/format.rb",
56
- "lib/scout/misc/helper.rb",
57
- "lib/scout/misc/insist.rb",
58
- "lib/scout/misc/monitor.rb",
59
- "lib/scout/misc/system.rb",
60
- "lib/scout/named_array.rb",
61
36
  "lib/scout/offsite.rb",
37
+ "lib/scout/offsite/exceptions.rb",
62
38
  "lib/scout/offsite/ssh.rb",
63
39
  "lib/scout/offsite/step.rb",
64
40
  "lib/scout/offsite/sync.rb",
65
- "lib/scout/open.rb",
66
- "lib/scout/open/lock.rb",
67
- "lib/scout/open/lock/lockfile.rb",
68
- "lib/scout/open/remote.rb",
69
- "lib/scout/open/stream.rb",
70
- "lib/scout/open/util.rb",
71
- "lib/scout/path.rb",
72
- "lib/scout/path/find.rb",
73
- "lib/scout/path/tmpfile.rb",
74
- "lib/scout/path/util.rb",
75
- "lib/scout/persist.rb",
76
- "lib/scout/persist/open.rb",
77
- "lib/scout/persist/path.rb",
78
- "lib/scout/persist/serialize.rb",
79
- "lib/scout/resource.rb",
80
- "lib/scout/resource/open.rb",
81
- "lib/scout/resource/path.rb",
82
- "lib/scout/resource/produce.rb",
83
- "lib/scout/resource/produce/rake.rb",
84
- "lib/scout/resource/scout.rb",
85
- "lib/scout/resource/software.rb",
86
- "lib/scout/resource/util.rb",
87
41
  "lib/scout/semaphore.rb",
88
- "lib/scout/simple_opt.rb",
89
- "lib/scout/simple_opt/accessor.rb",
90
- "lib/scout/simple_opt/doc.rb",
91
- "lib/scout/simple_opt/get.rb",
92
- "lib/scout/simple_opt/parse.rb",
93
- "lib/scout/simple_opt/setup.rb",
94
- "lib/scout/tmpfile.rb",
95
42
  "lib/scout/tsv.rb",
96
43
  "lib/scout/tsv/attach.rb",
97
44
  "lib/scout/tsv/change_id.rb",
@@ -113,8 +60,10 @@ Gem::Specification.new do |s|
113
60
  "lib/scout/tsv/util/process.rb",
114
61
  "lib/scout/tsv/util/reorder.rb",
115
62
  "lib/scout/tsv/util/select.rb",
63
+ "lib/scout/tsv/util/sort.rb",
116
64
  "lib/scout/tsv/util/unzip.rb",
117
65
  "lib/scout/work_queue.rb",
66
+ "lib/scout/work_queue/exceptions.rb",
118
67
  "lib/scout/work_queue/socket.rb",
119
68
  "lib/scout/work_queue/worker.rb",
120
69
  "lib/scout/workflow.rb",
@@ -157,49 +106,12 @@ Gem::Specification.new do |s|
157
106
  "share/software/install_helpers",
158
107
  "share/templates/command",
159
108
  "share/templates/workflow.rb",
160
- "test/scout/indiferent_hash/test_case_insensitive.rb",
161
- "test/scout/indiferent_hash/test_options.rb",
162
- "test/scout/log/test_color.rb",
163
- "test/scout/log/test_progress.rb",
164
- "test/scout/misc/test_digest.rb",
165
- "test/scout/misc/test_filesystem.rb",
166
- "test/scout/misc/test_insist.rb",
167
- "test/scout/misc/test_system.rb",
168
109
  "test/scout/offsite/test_ssh.rb",
169
110
  "test/scout/offsite/test_step.rb",
170
111
  "test/scout/offsite/test_sync.rb",
171
112
  "test/scout/offsite/test_task.rb",
172
- "test/scout/open/test_lock.rb",
173
- "test/scout/open/test_remote.rb",
174
- "test/scout/open/test_stream.rb",
175
- "test/scout/open/test_util.rb",
176
- "test/scout/path/test_find.rb",
177
- "test/scout/path/test_util.rb",
178
- "test/scout/persist/test_open.rb",
179
- "test/scout/persist/test_path.rb",
180
- "test/scout/persist/test_serialize.rb",
181
- "test/scout/resource/test_path.rb",
182
- "test/scout/resource/test_produce.rb",
183
- "test/scout/resource/test_software.rb",
184
- "test/scout/resource/test_util.rb",
185
- "test/scout/simple_opt/test_doc.rb",
186
- "test/scout/simple_opt/test_get.rb",
187
- "test/scout/simple_opt/test_parse.rb",
188
- "test/scout/simple_opt/test_setup.rb",
189
- "test/scout/test_cmd.rb",
190
- "test/scout/test_concurrent_stream.rb",
191
- "test/scout/test_config.rb",
192
- "test/scout/test_indiferent_hash.rb",
193
- "test/scout/test_log.rb",
194
- "test/scout/test_meta_extension.rb",
195
- "test/scout/test_misc.rb",
196
- "test/scout/test_named_array.rb",
197
- "test/scout/test_open.rb",
198
- "test/scout/test_path.rb",
199
- "test/scout/test_persist.rb",
200
- "test/scout/test_resource.rb",
113
+ "test/scout/test_offsite.rb",
201
114
  "test/scout/test_semaphore.rb",
202
- "test/scout/test_tmpfile.rb",
203
115
  "test/scout/test_tsv.rb",
204
116
  "test/scout/test_work_queue.rb",
205
117
  "test/scout/test_workflow.rb",
@@ -221,6 +133,7 @@ Gem::Specification.new do |s|
221
133
  "test/scout/tsv/util/test_process.rb",
222
134
  "test/scout/tsv/util/test_reorder.rb",
223
135
  "test/scout/tsv/util/test_select.rb",
136
+ "test/scout/tsv/util/test_sort.rb",
224
137
  "test/scout/tsv/util/test_unzip.rb",
225
138
  "test/scout/work_queue/test_socket.rb",
226
139
  "test/scout/work_queue/test_worker.rb",
@@ -249,10 +162,9 @@ Gem::Specification.new do |s|
249
162
 
250
163
  s.specification_version = 4
251
164
 
252
- s.add_runtime_dependency(%q<term-ansicolor>.freeze, [">= 0"])
165
+ s.add_runtime_dependency(%q<scout-essentials>.freeze, [">= 0"])
253
166
  s.add_runtime_dependency(%q<net-ssh>.freeze, [">= 0"])
254
167
  s.add_runtime_dependency(%q<matrix>.freeze, [">= 0"])
255
- s.add_runtime_dependency(%q<sys-proctable>.freeze, [">= 0"])
256
168
  s.add_runtime_dependency(%q<RubyInline>.freeze, [">= 0"])
257
169
  s.add_development_dependency(%q<rdoc>.freeze, ["~> 3.12"])
258
170
  s.add_development_dependency(%q<bundler>.freeze, ["~> 1.0"])