rbbt-util 5.17.58 → 5.17.59
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/lib/rbbt/rest/client.rb +1 -0
- data/lib/rbbt/rest/client/step.rb +9 -3
- data/lib/rbbt/util/misc/omics.rb +3 -0
- data/lib/rbbt/workflow/accessor.rb +4 -2
- data/lib/rbbt/workflow/definition.rb +1 -1
- data/lib/rbbt/workflow/step.rb +1 -1
- data/lib/rbbt/workflow/step/run.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 849b316f4dfa60ed5c29ef8da518739f1e367f5b
|
4
|
+
data.tar.gz: ae52b18f5d3ad480fabd97b1d6c335ec6d761015
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 71e1e58112898babac4e3314fe5cd6199b8401f77724d1282eb91915fd1c5399dcb2acd0bd5c2d4e8928f6530536bbce7186b44117a71abc567b827ffca9a2e6
|
7
|
+
data.tar.gz: ee609ff5e22ce8d218416af0e3a4c958dc58b63033f70eecec04b1f89961643a98197ee7d6815712d7ece7ef4b7edab2f240dff502818ccd21b7c2fd039bd03e
|
data/lib/rbbt/rest/client.rb
CHANGED
@@ -11,6 +11,7 @@ class WorkflowRESTClient
|
|
11
11
|
end
|
12
12
|
end
|
13
13
|
end
|
14
|
+
|
14
15
|
def initialize(base_url, task = nil, base_name = nil, inputs = nil, result_type = nil, result_description = nil, is_exec = false)
|
15
16
|
@base_url, @task, @base_name, @inputs, @result_type, @result_description, @is_exec = base_url, task, base_name, inputs, result_type, result_description, is_exec
|
16
17
|
@mutex = Mutex.new
|
@@ -23,10 +24,12 @@ class WorkflowRESTClient
|
|
23
24
|
end
|
24
25
|
|
25
26
|
def task_name
|
27
|
+
init_job
|
26
28
|
(Array === @url ? @url.first : @url).split("/")[-2]
|
27
29
|
end
|
28
30
|
|
29
31
|
def info(check_lock=false)
|
32
|
+
@info = nil unless @info and @info[:status] and @info[:status].to_sym == :done
|
30
33
|
@info ||= begin
|
31
34
|
init_job unless url
|
32
35
|
info = WorkflowRESTClient.get_json(File.join(url, 'info'))
|
@@ -58,8 +61,10 @@ class WorkflowRESTClient
|
|
58
61
|
|
59
62
|
#{{{ MANAGEMENT
|
60
63
|
|
61
|
-
def init_job(cache_type =
|
62
|
-
|
64
|
+
def init_job(cache_type = nil)
|
65
|
+
cache_type = :asynchronous if cache_type.nil? and not @is_exec
|
66
|
+
cache_type = :exec if cache_type.nil?
|
67
|
+
@name ||= Persist.memory("RemoteSteps", :workflow => self, :task => task, :jobname => @name, :inputs => inputs, :cache_type => cache_type) do
|
63
68
|
WorkflowRESTClient.post_jobname(File.join(base_url, task.to_s), inputs.merge(:jobname => @name||@base_name, :_cache_type => cache_type))
|
64
69
|
end
|
65
70
|
@url = File.join(base_url, task.to_s, @name)
|
@@ -118,7 +123,8 @@ class WorkflowRESTClient
|
|
118
123
|
end
|
119
124
|
|
120
125
|
def path
|
121
|
-
|
126
|
+
init_job
|
127
|
+
@url + '?_format=raw'
|
122
128
|
end
|
123
129
|
|
124
130
|
def run(noload = false)
|
data/lib/rbbt/util/misc/omics.rb
CHANGED
@@ -279,7 +279,7 @@ class Step
|
|
279
279
|
end
|
280
280
|
|
281
281
|
def dirty?
|
282
|
-
rec_dependencies.collect{|dependency| dependency.path }.uniq.reject{|path| path.exists?}.any?
|
282
|
+
rec_dependencies.collect{|dependency| dependency.path }.uniq.reject{|path| not Path === path or path.exists?}.any?
|
283
283
|
end
|
284
284
|
|
285
285
|
def done?
|
@@ -545,7 +545,9 @@ module Workflow
|
|
545
545
|
options.each{|i,v|
|
546
546
|
case v
|
547
547
|
when Symbol
|
548
|
-
|
548
|
+
all_d = (real_dependencies + real_dependencies.collect{|d| d.rec_dependencies} ).flatten.compact.uniq
|
549
|
+
rec_dependency = all_d.select{|d| d.task_name.to_sym == v }.first
|
550
|
+
|
549
551
|
if rec_dependency.nil?
|
550
552
|
_inputs[i] = v
|
551
553
|
else
|
@@ -55,7 +55,7 @@ module Workflow
|
|
55
55
|
DependencyBlock.setup block, dependency if dependency.any?
|
56
56
|
@dependencies << block
|
57
57
|
else
|
58
|
-
if Module === dependency.first
|
58
|
+
if Module === dependency.first or (defined? WorkflowRESTClient and WorkflowRESTClient === dependency.first)
|
59
59
|
@dependencies << dependency
|
60
60
|
else
|
61
61
|
@dependencies.concat dependency
|
data/lib/rbbt/workflow/step.rb
CHANGED
@@ -230,7 +230,7 @@ class Step
|
|
230
230
|
|
231
231
|
# A step result with no info_file means that it was manually
|
232
232
|
# placed. In that case, do not consider its dependencies
|
233
|
-
return [] if Open.exists?(self.path.to_s) and not Open.exists? self.info_file
|
233
|
+
return [] if not WorkflowRESTClient::RemoteStep === self and Open.exists?(self.path.to_s) and not Open.exists? self.info_file
|
234
234
|
|
235
235
|
return [] if dependencies.nil? or dependencies.empty?
|
236
236
|
|
@@ -96,7 +96,7 @@ class Step
|
|
96
96
|
end
|
97
97
|
|
98
98
|
def checks
|
99
|
-
rec_dependencies.collect{|dependency| dependency.path }.uniq
|
99
|
+
rec_dependencies.collect{|dependency| (defined? WorkflowRESTClient and WorkflowRESTClient::RemoteStep === dependency) ? nil : dependency.path }.compact.uniq
|
100
100
|
end
|
101
101
|
|
102
102
|
|
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.17.
|
4
|
+
version: 5.17.59
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Vazquez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-07-
|
11
|
+
date: 2015-07-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|