rbbt-util 5.13.20 → 5.13.21
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: abdf8f28beb9196592b55ba4bce0a36931c8f880
|
4
|
+
data.tar.gz: eaacc6b9157a3edafe34c6b3b2db9435c9d9dd08
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c832c458e7434da05bdd203097e787815e35b444c12faf1d6e6de423b2d282528c2a9ed4c379be8580c65b6d71fa01d8595ebf313e59de0dddc1ef3ba2e4ce5a
|
7
|
+
data.tar.gz: f37553cde0d158988bde704bb73f014d4e8e2d311447d37f87ee61bae7bd314d8e54263438dfce9d22aabf3258b862b87d3fbf910ec4d2f61eb066e75f41d30d
|
@@ -29,11 +29,12 @@ class RbbtProcessQueue
|
|
29
29
|
end
|
30
30
|
rescue Aborted
|
31
31
|
Log.warn "Callback thread aborted"
|
32
|
-
@process_monitor.raise
|
32
|
+
@process_monitor.raise $!
|
33
33
|
raise $!
|
34
34
|
rescue ClosedStream
|
35
35
|
rescue Exception
|
36
36
|
Log.warn "Callback thread exception: #{$!.message}"
|
37
|
+
Log.exception $!
|
37
38
|
@process_monitor.raise $!
|
38
39
|
raise $!
|
39
40
|
ensure
|
data/lib/rbbt/util/misc/lock.rb
CHANGED
@@ -5,6 +5,18 @@ class Step
|
|
5
5
|
|
6
6
|
INFO_SERIALIAZER = Marshal
|
7
7
|
|
8
|
+
def self.wait_for_jobs(jobs)
|
9
|
+
begin
|
10
|
+
threads = []
|
11
|
+
jobs.each do |j| threads << Thread.new{j.grace.join} end
|
12
|
+
threads.each{|t| t.join }
|
13
|
+
rescue Exception
|
14
|
+
threads.each{|t| t.exit }
|
15
|
+
jobs.each do |j| j.abort end
|
16
|
+
raise $!
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
8
20
|
def self.files_dir(path)
|
9
21
|
path.nil? ? nil : path + '.files'
|
10
22
|
end
|
@@ -0,0 +1,81 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'rbbt/workflow'
|
4
|
+
|
5
|
+
require 'rbbt-util'
|
6
|
+
require 'rbbt-util'
|
7
|
+
require 'rbbt/util/simpleopt'
|
8
|
+
|
9
|
+
$0 = "rbbt #{$previous_commands*""} #{ File.basename(__FILE__) }" if $previous_commands
|
10
|
+
|
11
|
+
options = SOPT.setup <<EOF
|
12
|
+
Examine the info of a job result
|
13
|
+
|
14
|
+
$ rbbt workflow info <job-result>
|
15
|
+
|
16
|
+
-h--help Help
|
17
|
+
EOF
|
18
|
+
|
19
|
+
SOPT.usage if options[:help]
|
20
|
+
|
21
|
+
file = ARGV.shift
|
22
|
+
|
23
|
+
def get_step(file)
|
24
|
+
file = file.sub(/\.(info|files)/,'')
|
25
|
+
Step.new file
|
26
|
+
end
|
27
|
+
|
28
|
+
def status_msg(status)
|
29
|
+
color = case status
|
30
|
+
when :error, :aborted, :missing
|
31
|
+
:red
|
32
|
+
when :streaming
|
33
|
+
:yellow
|
34
|
+
when :done
|
35
|
+
:green
|
36
|
+
else
|
37
|
+
nil
|
38
|
+
end
|
39
|
+
Log.color(color, status)
|
40
|
+
end
|
41
|
+
|
42
|
+
step = get_step file
|
43
|
+
|
44
|
+
info = step.info
|
45
|
+
dependencies = info[:dependencies]
|
46
|
+
inputs = info[:inputs]
|
47
|
+
status = info[:status]
|
48
|
+
time = info[:time_elapsed]
|
49
|
+
messages = info[:messages]
|
50
|
+
|
51
|
+
puts Log.color(:magenta, "File") << ": " << step.path
|
52
|
+
puts Log.color(:magenta, "Status") << ": " << status_msg(status)
|
53
|
+
puts Log.color(:magenta, "Time") << ": " << time.to_i.to_s << " sec." if time
|
54
|
+
if inputs and inputs.any?
|
55
|
+
puts Log.color(:magenta, "Inputs")
|
56
|
+
inputs.each do |input,value|
|
57
|
+
case value
|
58
|
+
when Array
|
59
|
+
puts " " << Misc.format_definition_list_item(input, value[0..5]*"\n", 80, 20, :blue)
|
60
|
+
when TrueClass, FalseClass
|
61
|
+
puts " " << Misc.format_definition_list_item(input, value.to_s, 80, 20, :blue)
|
62
|
+
else
|
63
|
+
text = value.split("\n")[0..5].compact * "\n\n"
|
64
|
+
puts " " << Misc.format_definition_list_item(input, text, 80, 20, :blue)
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
if dependencies and dependencies.any?
|
70
|
+
puts Log.color(:magenta, "Dependencies") << ": "
|
71
|
+
dependencies.each do |name,task,file|
|
72
|
+
puts " " << file
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
if messages and messages.any?
|
77
|
+
puts Log.color(:magenta, "Messages") << ": "
|
78
|
+
messages.each do |msg|
|
79
|
+
puts " " << msg
|
80
|
+
end
|
81
|
+
end
|
@@ -8,6 +8,21 @@ require 'rbbt/util/simpleopt'
|
|
8
8
|
require 'rbbt/workflow/step'
|
9
9
|
require 'rbbt/util/misc'
|
10
10
|
|
11
|
+
require 'rbbt-util'
|
12
|
+
require 'rbbt/util/simpleopt'
|
13
|
+
|
14
|
+
$0 = "rbbt #{$previous_commands*""} #{ File.basename(__FILE__) }" if $previous_commands
|
15
|
+
|
16
|
+
options = SOPT.setup <<EOF
|
17
|
+
Examine the provenance of a job result
|
18
|
+
|
19
|
+
$ rbbt workflow prov <job-result>
|
20
|
+
|
21
|
+
-h--help Help
|
22
|
+
EOF
|
23
|
+
|
24
|
+
SOPT.usage if options[:help]
|
25
|
+
|
11
26
|
file = ARGV.shift
|
12
27
|
|
13
28
|
$seen = []
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbbt-util
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.13.
|
4
|
+
version: 5.13.21
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Vazquez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-05-
|
11
|
+
date: 2014-05-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -258,6 +258,7 @@ files:
|
|
258
258
|
- share/rbbt_commands/tsv/values
|
259
259
|
- share/rbbt_commands/workflow/cmd
|
260
260
|
- share/rbbt_commands/workflow/example
|
261
|
+
- share/rbbt_commands/workflow/info
|
261
262
|
- share/rbbt_commands/workflow/install
|
262
263
|
- share/rbbt_commands/workflow/jobs
|
263
264
|
- share/rbbt_commands/workflow/list
|