rbbt-util 5.5.32 → 5.5.33

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 CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MmRkMzQwMzlmNjZkOTJiNTkwZThjNjRjNDRlZTkyYTRhNDk4MjJjZg==
4
+ ZWEwNDc0YzJmMjEzZTdmMDQzNTdiMzg0MTdiNWQ2OTA1ZTgzYTk3ZQ==
5
5
  data.tar.gz: !binary |-
6
- ZmM5ZmVkNmQ4YTVkN2E5MzM3YzQyZTA1NTQ1OTI3YWJkYTU4MWZmMQ==
6
+ MWMzNGU3YTA5MGJiMzkyZDNkOGUyZjYyOTE5YTM0ZDkwYWM2Yzc3MA==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- Njc4YmFmY2MwMzRkMTE3N2E2YThmNmUwMWEyOTFjNDQ2NDFiZjUzM2QyZWE0
10
- ODFjY2QwMTY4MGZlYWIyMDdkMmRjMDQ2NDFmODJjNmVkNTM4MDY3MDAzN2Rm
11
- MWMzOTJmZGJjMGY0ZWIwNzE3YzAwYjE4Y2IyYTM0ZjVkNGQ5ZTQ=
9
+ MzMyM2RmMjRiMDkxMzIxMjQ0MmMxMjU4YWJmYTc4MThmNGJjOTZlZWI3YTNl
10
+ NGZjMGViMTFmOWRkN2FkYjIxODZlNjA1NmFhZGE3MTdhYmVmYzdiZmU2N2Ri
11
+ N2M2OGRkZTE1NmU3ODkyZWY2NjkyMmU2ZjlmZTJlN2UwMTk0ZGE=
12
12
  data.tar.gz: !binary |-
13
- MWQxOGUwYTliMjFhODkwZGE0NTk1NTRmNjExOTIzMDEzM2UzMDJiZjE5OGI2
14
- ZDQ0ZjBkMGI4NGY2MDgxY2NlMjkxOWNkNTA4ZGRmYzE3ZWRiNDA0ODY4ZGUz
15
- NzNkNzk5NGE2MTgzOTc1M2U4NDI5MTBhM2YwOGY5YTYyOTJmZDk=
13
+ OGQ3MTI4Yzc2NjIzNjQ1NjFmNjI4YWUxMzZlOTViMWU0NWZmOWU5ZjQ1MWJi
14
+ ZjBkOWRiYjg4YWZkNmNmNGVmYTBmZDdmMGMwNmZiOTJmMDE0MDY0YzRmOTE0
15
+ Njc0N2FmZmMxZDQ0ODZjYzliYzFkZWIyNWFjY2VlYWY5YzMxM2I=
data/bin/rbbt_exec.rb CHANGED
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
-
4
3
  code_file = ARGV[0]
5
4
  output = ARGV[1]
6
5
 
data/etc/app.d/base.rb CHANGED
@@ -1,11 +1,14 @@
1
1
  #{{{ MODULES AND HELPERS
2
+
2
3
  register Sinatra::RbbtRESTWorkflow
4
+
3
5
  if Rbbt.etc.workflows.find.exists?
4
6
  Rbbt.etc.workflows.find.read.split("\n").each do |workflow|
5
7
  Workflow.require_workflow workflow
6
8
  add_workflow Kernel.const_get(workflow), true
7
9
  end
8
10
  end
11
+
9
12
  register Sinatra::RbbtRESTMain
10
13
  register Sinatra::RbbtRESTEntity
11
14
  register Sinatra::RbbtRESTFileServer # Remove to prevent serving files
@@ -13,6 +16,7 @@ register Sinatra::RbbtRESTKnowledgeBase
13
16
  helpers Sinatra::RbbtMiscHelpers
14
17
 
15
18
  #{{{ SESSIONS
19
+
16
20
  use Rack::Session::Cookie, :key => 'rack.session',
17
21
  :path => '/',
18
22
  :expire_after => 2592000,
data/share/config.ru CHANGED
@@ -1,6 +1,6 @@
1
+ require 'rbbt'
1
2
  require 'rbbt/resource'
2
3
 
3
- require 'rbbt'
4
4
  load Rbbt.etc['app.d/init.rb'].find
5
5
 
6
6
  $class_name = class_name = File.basename(FileUtils.pwd)
@@ -9,16 +9,16 @@ $app = app = eval "class #{class_name} < Sinatra::Base; self end"
9
9
 
10
10
  $LOAD_PATH.unshift('lib')
11
11
 
12
- #{{{ POST
12
+ #{{{ PRE
13
13
  Log.info{"Loading: " << Rbbt.etc['app.d/pre.rb'].find if Rbbt.etc['app.d/pre.rb'].exists?}
14
14
  load Rbbt.etc['app.d/pre.rb'].find if Rbbt.etc['app.d/pre.rb'].exists?
15
15
 
16
+ #{{{ BASE
16
17
  app.class_eval do
17
18
  Log.info{"Loading: " << Rbbt.etc['app.d/base.rb'].find}
18
19
  eval Rbbt.etc['app.d/base.rb'].read, nil, Rbbt.etc['app.d/base.rb'].find
19
20
  end
20
21
 
21
-
22
22
  #{{{ RESOURCES
23
23
  Log.info{"Loading: " << Rbbt.etc['app.d/resources.rb'].find}
24
24
  load Rbbt.etc['app.d/resources.rb'].find
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'rbbt'
4
+ require 'rbbt/resource'
5
+ require 'rbbt-util'
6
+ require 'rbbt/util/simpleopt'
7
+
8
+ options = SOPT.get "-e--environment*:-p--port*:-s--server*:-h--host*:-f--finder"
9
+ options[:Port] ||= options[:port]
10
+
11
+ file = ARGV.shift
12
+
13
+ load Rbbt.etc['app.d/init.rb'].find
14
+
15
+ $class_name = class_name = "SingleTemplate"
16
+
17
+ $app = app = eval "class #{class_name} < Sinatra::Base; self end"
18
+
19
+ #$LOAD_PATH.unshift('lib')
20
+
21
+ #{{{ PRE
22
+ Log.info{"Loading: " << Rbbt.etc['app.d/pre.rb'].find if Rbbt.etc['app.d/pre.rb'].exists?}
23
+ load Rbbt.etc['app.d/pre.rb'].find if Rbbt.etc['app.d/pre.rb'].exists?
24
+
25
+ app.get '/' do
26
+ file = file.sub(/\.haml/,'')
27
+ template_render(file)
28
+ end
29
+
30
+ #{{{ BASE
31
+ app.class_eval do
32
+ Log.info{"Loading: " << Rbbt.etc['app.d/base.rb'].find}
33
+ eval Rbbt.etc['app.d/base.rb'].read, nil, Rbbt.etc['app.d/base.rb'].find
34
+ end
35
+
36
+ #{{{ RESOURCES
37
+ Log.info{"Loading: " << Rbbt.etc['app.d/resources.rb'].find}
38
+ load Rbbt.etc['app.d/resources.rb'].find
39
+
40
+ #{{{ ENTITIES
41
+ Log.info{"Loading: " << Rbbt.etc['app.d/entities.rb'].find}
42
+ load Rbbt.etc['app.d/entities.rb'].find
43
+
44
+ #{{{ FINDER
45
+ app.class_eval do
46
+ Log.info{"Loading: " << Rbbt.etc['app.d/finder.rb'].find}
47
+ eval Rbbt.etc['app.d/finder.rb'].read
48
+ end
49
+
50
+ #{{{ POST
51
+ Log.info{"Loading: " << Rbbt.etc['app.d/post.rb'].find if Rbbt.etc['app.d/post.rb'].exists?}
52
+ load Rbbt.etc['app.d/post.rb'].find if Rbbt.etc['app.d/post.rb'].exists?
53
+
54
+ #{{{ RUN
55
+ $title = class_name
56
+ require 'rack'
57
+
58
+ ENV["RBBT_FINDER"] = "true" if options.include?(:finder)
59
+ ENV["RACK_ENV"] = options[:environment] if options.include?(:environment)
60
+
61
+ RbbtRESTHelpers.template_resources.unshift Path.setup(File.expand_path(File.dirname(file)))
62
+
63
+ app.port = options[:port] if options[:port]
64
+ app.server = options[:server] if options[:server]
65
+ app.environment = options[:environment] if options[:environment]
66
+ app.run!
@@ -3,20 +3,26 @@
3
3
  require 'rbbt-util'
4
4
  require 'rbbt/util/simpleopt'
5
5
 
6
+ options = SOPT.get("-tc--tokyocabinet")
6
7
 
7
8
  file = ARGV.shift
8
9
 
9
- header = TSV.parse_header(Open.open(file))
10
+ if options[:tokyocabinet]
11
+ tsv = Persist.open_tokyocabinet(file, false)
12
+ puts tsv.summary
13
+ else
14
+ header = TSV.parse_header(Open.open(file))
10
15
 
11
- puts "File: #{ file }"
12
- puts "Key: #{header.key_field}"
13
- puts "Fields: "
14
- header.fields.each_with_index do |f,i|
15
- puts " - #{i + 1}: " << f
16
+ puts "File: #{ file }"
17
+ puts "Key: #{header.key_field}"
18
+ puts "Fields: "
19
+ header.fields.each_with_index do |f,i|
20
+ puts " - #{i + 1}: " << f
21
+ end
22
+ puts "Rows: #{`wc -l #{ file }|cut -f 1 -d' '`}"
23
+ puts "First line:"
24
+ parts = []
25
+ header.first_line.split(header.sep).each_with_index{|p,i| parts << "(#{i}) #{p}"}
26
+ puts parts * "\t"
16
27
  end
17
- puts "Rows: #{`wc -l #{ file }|cut -f 1 -d' '`}"
18
- puts "First line:"
19
- parts = []
20
- header.first_line.split(header.sep).each_with_index{|p,i| parts << "(#{i}) #{p}"}
21
- puts parts * "\t"
22
28
 
@@ -8,7 +8,6 @@ require 'rbbt/util/misc'
8
8
 
9
9
  options = SOPT.get("-l--list:-z--zombies:-e--errors:-c--clean:-n--name:-a--all:-w--wipe:-f--file*:-q--quick")
10
10
 
11
-
12
11
  YAML::ENGINE.yamler = 'syck' if defined? YAML::ENGINE and YAML::ENGINE.respond_to? :yamler
13
12
 
14
13
  def info_files
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.5.32
4
+ version: 5.5.33
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
@@ -69,13 +69,9 @@ dependencies:
69
69
  description: Utilities for handling tsv files, caches, etc
70
70
  email: miguel.vazquez@cnio.es
71
71
  executables:
72
- - tsv.rb
73
- - tchash.rb
74
- - run_workflow.rb
75
72
  - rbbt_query.rb
76
73
  - rbbt_exec.rb
77
74
  - rbbt_Rutil.rb
78
- - rbbt_monitor.rb
79
75
  - rbbt
80
76
  - rbbt_dangling_locks.rb
81
77
  extensions: []
@@ -89,11 +85,7 @@ files:
89
85
  - bin/rbbt_Rutil.rb
90
86
  - bin/rbbt_dangling_locks.rb
91
87
  - bin/rbbt_exec.rb
92
- - bin/rbbt_monitor.rb
93
88
  - bin/rbbt_query.rb
94
- - bin/run_workflow.rb
95
- - bin/tchash.rb
96
- - bin/tsv.rb
97
89
  - etc/app.d/base.rb
98
90
  - etc/app.d/entities.rb
99
91
  - etc/app.d/finder.rb
@@ -158,6 +150,7 @@ files:
158
150
  - share/install/software/lib/install_helpers
159
151
  - share/rbbt_commands/app/install
160
152
  - share/rbbt_commands/app/start
153
+ - share/rbbt_commands/app/template
161
154
  - share/rbbt_commands/conf/web_user/add
162
155
  - share/rbbt_commands/conf/web_user/list
163
156
  - share/rbbt_commands/conf/web_user/remove
@@ -170,6 +163,7 @@ files:
170
163
  - share/rbbt_commands/tsv/info
171
164
  - share/rbbt_commands/workflow/cmd
172
165
  - share/rbbt_commands/workflow/install
166
+ - share/rbbt_commands/workflow/monitor
173
167
  - share/rbbt_commands/workflow/remote/add
174
168
  - share/rbbt_commands/workflow/remote/list
175
169
  - share/rbbt_commands/workflow/remote/remove
data/bin/run_workflow.rb DELETED
@@ -1,240 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'rbbt'
4
- require 'rbbt/util/simpleopt'
5
- require 'rbbt/workflow'
6
- require 'pp'
7
-
8
- def usage(task)
9
- puts task.usage
10
- exit -1
11
- end
12
-
13
- def SOPT_options(workflow, task)
14
- sopt_options = []
15
- workflow.rec_inputs(task.name).each do |name|
16
- short = name.to_s.chars.first
17
- boolean = workflow.rec_input_types(task.name)[name].to_sym == :boolean
18
-
19
- sopt_options << "-#{short}--#{name}#{boolean ? '' : '*'}"
20
- end
21
-
22
- sopt_options * ":"
23
- end
24
-
25
- def fix_options(workflow, task, job_options)
26
- option_types = workflow.rec_input_types(task.name)
27
-
28
- #workflow.resolve_locals(job_options)
29
-
30
- job_options_cleaned = {}
31
-
32
- job_options.each do |name, value|
33
- value = case option_types[name].to_sym
34
- when :float
35
- value.to_f
36
- when :integer
37
- value.to_i
38
- when :string, :text
39
- case
40
- when value == '-'
41
- STDIN.read
42
- when (String === value and File.exists?(value))
43
- Open.read(value)
44
- else
45
- value
46
- end
47
- when :array
48
- if Array === value
49
- value
50
- else
51
- case
52
- when value == '-'
53
- STDIN.read
54
- when (String === value and File.exists?(value))
55
- Open.read(value)
56
- else
57
- value
58
- end.split(/[,|\s]/)
59
- end
60
- when :tsv
61
- if TSV === value
62
- value
63
- else
64
- begin
65
- if value == '-'
66
- TSV.open(STDIN).to_s :sort
67
- else
68
- TSV.new(value).to_s :sort
69
- end
70
- rescue
71
- value
72
- end
73
- end
74
- else
75
- value
76
- end
77
- job_options_cleaned[name] = value
78
- end
79
-
80
- job_options_cleaned
81
- end
82
-
83
- options = SOPT.get "-t--task*:--profile:-l--log*:-h--help:-n--name*:-cl--clean:-rcl-recursive_clean:-pn--printname:-srv--server:-p--port*"
84
-
85
- workflow = ARGV.first
86
-
87
- if options[:server]
88
-
89
- require 'zurb-foundation'
90
- require 'modular-scale'
91
-
92
- require 'rbbt/rest/main'
93
- require 'rbbt/rest/entity'
94
- require 'rbbt/rest/workflow'
95
- require 'rbbt/rest/file_server'
96
- require 'rbbt/rest/helpers'
97
-
98
- YAML::ENGINE.yamler = 'syck' if defined? YAML::ENGINE and YAML::ENGINE.respond_to? :yamler
99
-
100
- Workflow.require_workflow workflow
101
-
102
- class WorkflowRest < Sinatra::Base
103
- get '/' do
104
- redirect to(File.join('/', Workflow.workflows.last.to_s))
105
- end
106
- end
107
-
108
- if options[:profile]
109
- WorkflowRest.before File.join('/', Workflow.workflows.last.to_s, '*') do
110
- @profile = true
111
- end
112
- end
113
-
114
- class WorkflowRest < Sinatra::Base
115
-
116
- #{{{ MODULES AND HELPERS
117
- register Sinatra::RbbtRESTMain
118
- register Sinatra::RbbtRESTWorkflow
119
- register Sinatra::RbbtRESTEntity
120
- helpers Sinatra::RbbtMiscHelpers
121
-
122
- #{{{ DIRECTORIES
123
- local_var = Rbbt.var.find(:lib)
124
- set :cache_dir , local_var.sinatra.cache.find
125
- set :file_dir , local_var.sinatra.files.find
126
- set :favourites_dir , local_var.sinatra.favourites.find
127
- set :favourite_lists_dir , local_var.sinatra.favourite_lists
128
-
129
- #{{{ SESSIONS
130
- use Rack::Session::Cookie, :key => 'rack.session',
131
- :path => '/',
132
- :expire_after => 2592000,
133
- :secret => "Workflow #{Workflow.workflows.inspect} secret!!"
134
-
135
- #{{{ FOUNDATION RESOURCES
136
- add_sass_load_path "#{Gem.loaded_specs['compass'].full_gem_path}/frameworks/compass/stylesheets"
137
- add_sass_load_path "#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/scss/"
138
- add_sass_load_path "#{Gem.loaded_specs['modular-scale'].full_gem_path}/stylesheets/"
139
- RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/foundation")
140
- RbbtRESTHelpers.javascript_resources << Path.setup("#{Gem.loaded_specs['zurb-foundation'].full_gem_path}/js/vendor")
141
-
142
- $title = "Workflow Scout"
143
- use Rack::Deflater
144
- end
145
-
146
- WorkflowRest.add_workflow Workflow.workflows.last, true
147
-
148
- WorkflowRest.port = options[:port] || 4567
149
- WorkflowRest.run!
150
- else
151
-
152
- # Set log, fork, clean, recursive_clean and help
153
- Log.severity = options[:log].to_i if options.include? :log
154
- help = !!options.delete(:help)
155
- do_fork = !!options.delete(:fork)
156
- clean = !!options.delete(:clean)
157
- recursive_clean = !!options.delete(:recursive_clean)
158
-
159
-
160
- # Get workflow
161
-
162
- if Rbbt.etc.remote_workflows.exists?
163
- remote_workflows = Rbbt.etc.remote_workflows.yaml
164
- else
165
- remote_workflows = {}
166
- end
167
-
168
- if remote_workflows.include? workflow
169
- require 'rbbt/workflow/rest/client'
170
- workflow = RbbtRestClient.new remote_workflows[workflow], workflow
171
- else
172
- Workflow.require_workflow workflow
173
- workflow = Workflow.workflows.last
174
- end
175
-
176
- # Set task
177
- namespace, task = nil, nil
178
-
179
- case
180
- when (not options[:task])
181
- usage if help
182
- task = workflow.last_task
183
- namespace = workflow
184
- when (options[:task] =~ /\./)
185
- namespace, task = options.delete(:task).split('.')
186
- namespace = Misc.string2const(namespace)
187
- else
188
- task_name = options.delete(:task).to_sym
189
- task = workflow.tasks[task_name]
190
- raise "Task not found: #{ task_name }" if task.nil?
191
- end
192
-
193
-
194
- workflow.usage(task) if help
195
-
196
- name = options.delete(:name) || "Default"
197
-
198
- # get job args
199
- sopt_option_string = SOPT_options(workflow,task)
200
- job_options = SOPT.get sopt_option_string
201
- job_options = fix_options(workflow,task, job_options)
202
-
203
- #- get job
204
- job = workflow.job(task.name, name, job_options)
205
-
206
- # clean job
207
- job.clean if clean
208
- job.recursive_clean if recursive_clean
209
-
210
- # run
211
- if do_fork
212
- job.fork
213
- while not job.done?
214
- Log.debug "#{job.step}: #{job.messages.last}"
215
- sleep 2
216
- end
217
- raise job.messages.last if job.error?
218
- res = job.load
219
- else
220
- res = job.run
221
- end
222
-
223
- if options.delete(:printname)
224
- puts job.name
225
- exit
226
- else
227
- Log.low "Job name: #{job.name}"
228
- end
229
-
230
- case
231
- when Array === res
232
- puts res * "\n"
233
- when TSV === res
234
- puts res
235
- when Hash === res
236
- puts res.to_yaml
237
- else
238
- puts res
239
- end
240
- end
data/bin/tchash.rb DELETED
@@ -1,15 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'rbbt-util'
4
- require 'rbbt/util/simpleopt'
5
-
6
- options = SOPT.parse "-h--help"
7
-
8
- command = ARGV.shift
9
- file = ARGV.shift
10
-
11
- case command
12
- when 'cat'
13
- puts TSV.new(TCHash.get(file))
14
- end
15
-
data/bin/tsv.rb DELETED
@@ -1,14 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'rbbt/util/simpleopt'
4
-
5
- options = SOPT.get "-h--help:-to--tsv-options*:-p--persistence"
6
-
7
- command = ARGV.shift
8
- file = ARGV.shift
9
-
10
- case command
11
- when 'cat'
12
- puts TSV.new(file, options["tsv-options"].merge(options["persistence"]))
13
- when
14
-