rbbt-util 5.25.42 → 5.25.43

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rbbt/workflow/accessor.rb +18 -34
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8c7c2171a24807d0a7e1f7d33bc6b95c4905ed4d
4
- data.tar.gz: 99a0ae12b516bdf954e3128f48c1fb585efc2567
3
+ metadata.gz: 8c8329e1d8658643cd78a094eb7540e1655b07ba
4
+ data.tar.gz: af8d212a2026bee068c9bf1d1d6854e0c5a07138
5
5
  SHA512:
6
- metadata.gz: 9cc824ce02d93292895424f60db1c14da44519a9e373e6064e05317b1c34e6f05efa43703dd8f38326a24d62b9c0edbc4f778866fe88bd772d6c2cd9c2cdb464
7
- data.tar.gz: 4fec89ee21e2471dcf091891cada8115ec1d97cb54b689ee0fedfd7f86488379a3d5172c32b7be4305d333bcda2b859fb053ef2df4a2adefe0c2cfd924d235e1
6
+ metadata.gz: cc3adc891693f453bfabfc0877fbc813f12472b37bbe14fa901f4f0ce6883a0d65dcca545fb403dab5751bed842a4e1572e237b25120febbfae592a6b77f0ade
7
+ data.tar.gz: ad2a4d939b3e98efb39316d38a172a045da53019ef16202197265707e00767e7ed5232c8ad64490aad211ce9f734d7a420a7c45ec47ffec05333960e1ce584be
@@ -962,6 +962,20 @@ module Workflow
962
962
  override_dependencies
963
963
  end
964
964
 
965
+ def setup_override_dependency(dep, workflow, task_name)
966
+ dep = Step === dep ? dep : Workflow.load_step(dep)
967
+ dep.info[:name] = dep.name
968
+ begin
969
+ workflow = Kernel.const_get workflow if String === workflow
970
+ dep.task = workflow.tasks[task_name] if dep.task.nil? && workflow.tasks.include?(task_name)
971
+ rescue
972
+ Log.exception $!
973
+ end
974
+ dep.task_name = task_name
975
+ dep.overriden = true
976
+ dep
977
+ end
978
+
965
979
  def real_dependencies(task, orig_jobname, inputs, dependencies)
966
980
  real_dependencies = []
967
981
  path_deps = {}
@@ -978,12 +992,7 @@ module Workflow
978
992
  workflow, dep_task, options = dependency
979
993
 
980
994
  if override_dependencies[workflow.to_s] && value = override_dependencies[workflow.to_s][dep_task]
981
- d_ = Step === value ? value : Workflow.load_step(value)
982
- d_.info[:name] = d_.name
983
- d_.task = workflow.tasks[dep_task] if workflow.tasks.include?(dep_task)
984
- d_.task_name = dep_task
985
- d_.overriden = true
986
- d_
995
+ setup_override_dependency(value, workflow, dep_task)
987
996
  else
988
997
 
989
998
  compute = options[:compute] if options
@@ -1001,12 +1010,7 @@ module Workflow
1001
1010
  dependency
1002
1011
  when Symbol
1003
1012
  if override_dependencies[self.to_s] && value = override_dependencies[self.to_s][dependency]
1004
- d_ = Step === value ? value : Workflow.load_step(value)
1005
- d_.task = self.tasks[dependency] if self.tasks.include?(dependency)
1006
- d_.info[:name] = d_.name
1007
- d_.task_name = dependency
1008
- d_.overriden = true
1009
- d_
1013
+ setup_override_dependency(value, self, dependency)
1010
1014
  else
1011
1015
  _job(dependency, jobname, _inputs)
1012
1016
  end
@@ -1030,17 +1034,7 @@ module Workflow
1030
1034
  d[:workflow] ||= wf
1031
1035
  d[:task] ||= task_name
1032
1036
  if override_dependencies[d[:workflow].to_s] && value = override_dependencies[d[:workflow].to_s][d[:task]]
1033
- d = (Step === value ? value : Workflow.load_step(value))
1034
- d.info[:name] = d.name
1035
- begin
1036
- workflow = String === d[:workflow] ? Kernel.const_get(d[:workflow]) : d[:workflow]
1037
- d.task = workflow.tasks[d[:task]] if workflow.tasks.include?(d[:task])
1038
- rescue
1039
- Log.exception $!
1040
- end
1041
- d.task_name = d[:task]
1042
- d.overriden = true
1043
- d
1037
+ setup_override_dependency(value, d[:workflow], d[:task])
1044
1038
  else
1045
1039
  task_info = d[:workflow].task_info(d[:task])
1046
1040
 
@@ -1058,17 +1052,7 @@ module Workflow
1058
1052
  if Hash === dep
1059
1053
  dep[:workflow] ||= wf || self
1060
1054
  if override_dependencies[dep[:workflow].to_s] && value = override_dependencies[dep[:workflow].to_s][dep[:task]]
1061
- dep = (Step === value ? value : Workflow.load_step(value))
1062
- dep.info[:name] = dep.name
1063
- begin
1064
- workflow = String === dep[:workflow] ? Kernel.const_get(dep[:workflow]): dep[:workflow]
1065
- dep.task = workflow.tasks[dep[:task]] if workflow.tasks.include?(dep[:task])
1066
- rescue
1067
- Log.exception $!
1068
- end
1069
- dep.task_name = dep[:task]
1070
- dep.overriden = true
1071
- dep
1055
+ setup_override_dependency(value, dep[:workflow], dep[:task])
1072
1056
  else
1073
1057
  task_info = (dep[:task] && dep[:workflow]) ? dep[:workflow].task_info(dep[:task]) : nil
1074
1058
  inputs = assign_dep_inputs({}, dep[:inputs], real_dependencies, task_info)
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.25.42
4
+ version: 5.25.43
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-09 00:00:00.000000000 Z
11
+ date: 2019-04-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake