rbbt-util 5.28.7 → 5.28.8
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4d77757da0912cd41138ff33b99e19b7ffa1449be515fb7a8742f9d69c134ffd
|
4
|
+
data.tar.gz: 1edb139f92881591bbac18692dc6a0a739be9dfe0a820a4db2cffd30079fc328
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2219bd7152eda55f2c3c9b1e5d10d9593dd29232e7e77fe0707496031030455663983256930f35c2bcabd8b80e15c05d99f3bcdc9644135ee4a75d0267334c33
|
7
|
+
data.tar.gz: e4021aab6574fc10e960eec29f630075c8e95b27d6648ba47e1f76ecbf1a12b84a5859ad7b61ffde8591466ddcfec8ee5cfd27f6f82997648d712225ac099e1b
|
data/lib/rbbt/util/open.rb
CHANGED
@@ -397,7 +397,7 @@ module Open
|
|
397
397
|
if dir_sub_path_source.nil? and dir_sub_path_target.nil?
|
398
398
|
FileUtils.mkdir_p File.dirname(target) unless File.exist? File.dirname(target)
|
399
399
|
tmp_target = File.join(File.dirname(target), '.tmp_mv.' + File.basename(target))
|
400
|
-
FileUtils.
|
400
|
+
FileUtils.cp_r source, tmp_target
|
401
401
|
FileUtils.mv tmp_target, target
|
402
402
|
return
|
403
403
|
end
|
@@ -81,6 +81,7 @@ module Workflow
|
|
81
81
|
if forget
|
82
82
|
remove = config :remove_dep_tasks, :remove_dep_tasks, :default => REMOVE_DEP_TASKS
|
83
83
|
self.archive_deps
|
84
|
+
self.copy_files_dir
|
84
85
|
self.dependencies = self.dependencies - [dep]
|
85
86
|
Open.rm_rf self.files_dir if Open.exist? self.files_dir
|
86
87
|
FileUtils.cp_r dep.files_dir, self.files_dir if Open.exist?(dep.files_dir)
|
data/lib/rbbt/workflow/step.rb
CHANGED
@@ -109,6 +109,14 @@ class Step
|
|
109
109
|
@inputs || []
|
110
110
|
end
|
111
111
|
|
112
|
+
def copy_files_dir
|
113
|
+
if File.symlink?(self.files_dir)
|
114
|
+
realpath = Open.realpath(self.files_dir)
|
115
|
+
Open.rm self.files_dir
|
116
|
+
Open.cp realpath, self.files_dir
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
112
120
|
def archive_deps
|
113
121
|
self.set_info :archived_info, archived_info
|
114
122
|
self.set_info :archived_dependencies, info[:dependencies]
|
@@ -455,12 +463,15 @@ class Step
|
|
455
463
|
return [] if dependencies.nil? or dependencies.empty?
|
456
464
|
|
457
465
|
new_dependencies = []
|
466
|
+
archived_deps = self.info[:archived_info] ? self.info[:archived_info].keys : []
|
467
|
+
|
458
468
|
dependencies.each{|step|
|
459
469
|
#next if self.done? && Open.exists?(info_file) && info[:dependencies] && info[:dependencies].select{|task,name,path| path == step.path }.empty?
|
460
|
-
next if
|
470
|
+
next if archived_deps.include? step.path
|
471
|
+
next if seen.include? step.path
|
461
472
|
next if self.done? && need_run && ! updatable?
|
462
473
|
|
463
|
-
r = step.rec_dependencies(need_run, new_dependencies)
|
474
|
+
r = step.rec_dependencies(need_run, new_dependencies.collect{|d| d.path})
|
464
475
|
new_dependencies.concat r
|
465
476
|
new_dependencies << step
|
466
477
|
}
|
@@ -439,7 +439,7 @@ class Step
|
|
439
439
|
rec_dependencies = self.rec_dependencies
|
440
440
|
return [] if rec_dependencies.empty?
|
441
441
|
canfail_paths = self.canfail_paths
|
442
|
-
|
442
|
+
|
443
443
|
dirty_files = rec_dependencies.reject{|dep|
|
444
444
|
(defined?(WorkflowRemoteClient) && WorkflowRemoteClient::RemoteStep === dep) ||
|
445
445
|
! Open.exists?(dep.info_file) ||
|