sushi_fabric 0.4.3 → 0.4.6

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.
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # encoding: utf-8
3
- # Version = '20150716-161756'
3
+ # Version = '20150904-134632'
4
4
 
5
5
  require 'csv'
6
6
  require 'fileutils'
@@ -125,7 +125,7 @@ class ::String
125
125
  scan(/\[(.*)\]/).flatten.join =~ /#{tag}/
126
126
  end
127
127
  end
128
- def save_data_set(data_set_arr, headers, rows)
128
+ def save_data_set(data_set_arr, headers, rows, user=nil)
129
129
  data_set_hash = Hash[*data_set_arr]
130
130
  unless project = Project.find_by_number(data_set_hash['ProjectNumber'].to_i)
131
131
  project = Project.new
@@ -134,7 +134,9 @@ def save_data_set(data_set_arr, headers, rows)
134
134
  end
135
135
  if project = Project.find_by_number(data_set_hash['ProjectNumber'].to_i)
136
136
  data_set = DataSet.new
137
- #data_set.user = user
137
+ if user
138
+ data_set.user = user
139
+ end
138
140
  data_set.name = data_set_hash['DataSetName']
139
141
  data_set.project = project
140
142
  if parent_id = data_set_hash['ParentID'] and parent_data_set = DataSet.find_by_id(parent_id.to_i)
@@ -160,6 +162,10 @@ def save_data_set(data_set_arr, headers, rows)
160
162
  project.data_sets << data_set
161
163
  parent_data_set.data_sets << data_set if parent_data_set
162
164
  data_set.save
165
+ if user
166
+ user.data_sets << data_set
167
+ user.save
168
+ end
163
169
  end
164
170
  data_set.id
165
171
  end
@@ -186,6 +192,7 @@ class SushiApp
186
192
  attr_accessor :dataset_name
187
193
  attr_accessor :next_dataset_comment
188
194
  attr_accessor :workflow_manager
195
+ attr_accessor :current_user
189
196
  def initialize
190
197
  @gstore_dir = GSTORE_DIR
191
198
  @project = nil
@@ -229,7 +236,8 @@ class SushiApp
229
236
  end
230
237
  end
231
238
  unless NO_ROR
232
- @dataset_sushi_id = save_data_set(data_set_arr.to_a.flatten, headers, rows)
239
+ @current_user ||= nil
240
+ @dataset_sushi_id = save_data_set(data_set_arr.to_a.flatten, headers, rows, @current_user)
233
241
  end
234
242
  elsif @dataset_sushi_id
235
243
  @dataset_hash = []
@@ -512,9 +520,7 @@ rm -rf #{@scratch_dir} || exit 1
512
520
  @job_scripts << @job_script
513
521
  @result_dataset << next_dataset
514
522
  end
515
- def save_data_set(data_set_arr, headers, rows)
516
- #SushiFabric.save_data_set(data_set_arr, headers, rows, user)
517
- #=begin
523
+ def save_data_set(data_set_arr, headers, rows, user=nil)
518
524
  data_set_hash = Hash[*data_set_arr]
519
525
  unless project = Project.find_by_number(data_set_hash['ProjectNumber'].to_i)
520
526
  project = Project.new
@@ -523,7 +529,9 @@ rm -rf #{@scratch_dir} || exit 1
523
529
  end
524
530
  if project = Project.find_by_number(data_set_hash['ProjectNumber'].to_i)
525
531
  data_set = DataSet.new
526
- #data_set.user = user
532
+ if user
533
+ data_set.user = user
534
+ end
527
535
  data_set.name = data_set_hash['DataSetName']
528
536
  data_set.project = project
529
537
  if parent_id = data_set_hash['ParentID'] and parent_data_set = DataSet.find_by_id(parent_id.to_i)
@@ -549,10 +557,13 @@ rm -rf #{@scratch_dir} || exit 1
549
557
  project.data_sets << data_set
550
558
  parent_data_set.data_sets << data_set if parent_data_set
551
559
  data_set.save
560
+ if user
561
+ user.data_sets << data_set
562
+ user.save
563
+ end
552
564
  end
553
565
  data_set.id
554
566
  end
555
- #=end
556
567
  end
557
568
  def main
558
569
  ## sushi writes creates the job scripts and builds the result data set that is to be generated
@@ -604,8 +615,8 @@ rm -rf #{@scratch_dir} || exit 1
604
615
  end
605
616
  end
606
617
  unless NO_ROR
607
- #@next_dataset_id = save_data_set(data_set_arr.to_a.flatten, headers, rows, current_user)
608
- @next_dataset_id = save_data_set(data_set_arr.to_a.flatten, headers, rows)
618
+ @current_user ||= nil
619
+ @next_dataset_id = save_data_set(data_set_arr.to_a.flatten, headers, rows, @current_user)
609
620
 
610
621
  # save job and dataset relation in Sushi DB
611
622
  job_ids.each do |job_id|
@@ -1,3 +1,3 @@
1
1
  module SushiFabric
2
- VERSION = "0.4.3"
2
+ VERSION = "0.4.6"
3
3
  end
metadata CHANGED
@@ -1,57 +1,49 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: sushi_fabric
3
- version: !ruby/object:Gem::Version
4
- version: 0.4.3
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 0.4.6
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - Functional Genomics Center Zurich
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-07-16 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
12
+
13
+ date: 2015-09-04 00:00:00 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
15
16
  name: bundler
16
- requirement: !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: '1.3'
22
- type: :development
23
17
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
18
+ requirement: &id001 !ruby/object:Gem::Requirement
25
19
  none: false
26
- requirements:
20
+ requirements:
27
21
  - - ~>
28
- - !ruby/object:Gem::Version
29
- version: '1.3'
30
- - !ruby/object:Gem::Dependency
31
- name: rake
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ! '>='
36
- - !ruby/object:Gem::Version
37
- version: '0'
22
+ - !ruby/object:Gem::Version
23
+ version: "1.3"
38
24
  type: :development
25
+ version_requirements: *id001
26
+ - !ruby/object:Gem::Dependency
27
+ name: rake
39
28
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
29
+ requirement: &id002 !ruby/object:Gem::Requirement
41
30
  none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
46
- description: This library provides us with the methods to submit a job cooperating
47
- with workflow manager.
48
- email:
31
+ requirements:
32
+ - - ">="
33
+ - !ruby/object:Gem::Version
34
+ version: "0"
35
+ type: :development
36
+ version_requirements: *id002
37
+ description: This library provides us with the methods to submit a job cooperating with workflow manager.
38
+ email:
49
39
  - masaomi.hatakeyama@fgcz.uzh.ch
50
- executables:
40
+ executables:
51
41
  - sushi_fabric
52
42
  extensions: []
43
+
53
44
  extra_rdoc_files: []
54
- files:
45
+
46
+ files:
55
47
  - .bzrignore
56
48
  - Gemfile
57
49
  - LICENSE.txt
@@ -67,29 +59,32 @@ files:
67
59
  - sample/sample_dataset.tsv
68
60
  - sample/sample_parameterset.tsv
69
61
  - sushi_fabric.gemspec
70
- homepage: ''
71
- licenses:
62
+ homepage: ""
63
+ licenses:
72
64
  - MIT
73
65
  post_install_message:
74
66
  rdoc_options: []
75
- require_paths:
67
+
68
+ require_paths:
76
69
  - lib
77
- required_ruby_version: !ruby/object:Gem::Requirement
70
+ required_ruby_version: !ruby/object:Gem::Requirement
78
71
  none: false
79
- requirements:
80
- - - ! '>='
81
- - !ruby/object:Gem::Version
82
- version: '0'
83
- required_rubygems_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: "0"
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
84
77
  none: false
85
- requirements:
86
- - - ! '>='
87
- - !ruby/object:Gem::Version
88
- version: '0'
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: "0"
89
82
  requirements: []
83
+
90
84
  rubyforge_project:
91
- rubygems_version: 1.8.23.2
85
+ rubygems_version: 1.8.23
92
86
  signing_key:
93
87
  specification_version: 3
94
88
  summary: workflow manager client.
95
89
  test_files: []
90
+