rbbt-util 5.17.58 → 5.17.59
Sign up to get free protection for your applications and to get access to all the features.
- 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
|