rbbt-rest 1.8.98 → 1.8.99
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 +4 -4
- data/lib/rbbt/rest/workflow.rb +8 -0
- data/lib/rbbt/rest/workflow/jobs.rb +1 -1
- data/share/views/compass/app.sass +0 -8
- data/share/views/form.haml +1 -1
- data/share/views/job_info.haml +76 -66
- data/share/views/partials/dependencies.haml +1 -1
- data/share/views/partials/form.haml +5 -0
- 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: ad6482309191ee32ab32aceb94037c51ccf8b952
|
4
|
+
data.tar.gz: c24b8bce4a0f1ce91e9fa5e63ed9eca65d380e42
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 51f84013c9d5d897e0bc174d3a1e1ac2f7a86d2c70b5bb6b9b4e772c097b92e508858dd40168eced7cc30999cbdc735ca368c797f595afcb9b1bea4b16c0fb81
|
7
|
+
data.tar.gz: e61fbef82b893c88f2b0413cf610b896e837e43222e358be3e6074e3cb69344210b685ddaf2cd2d97acc68f1dd3ae05c93e1a6aa21bff171dbe1ffaf96c9086b
|
data/lib/rbbt/rest/workflow.rb
CHANGED
@@ -134,6 +134,14 @@ module Sinatra
|
|
134
134
|
|
135
135
|
task_parameters = consume_task_parameters(workflow, task, params)
|
136
136
|
|
137
|
+
if params.include?('__input_file_bundle')
|
138
|
+
inputs = workflow.task_info(task)[:inputs]
|
139
|
+
input_types = workflow.task_info(task)[:input_types]
|
140
|
+
|
141
|
+
file = params['__input_file_bundle'][:tempfile].path
|
142
|
+
task_parameters = task_parameters.merge(Workflow.load_inputs(file, inputs, input_types))
|
143
|
+
end
|
144
|
+
|
137
145
|
issue_job(workflow, task, jobname, task_parameters)
|
138
146
|
end
|
139
147
|
|
@@ -159,17 +159,9 @@ $cyan: rgba(50, 211, 255, 1)
|
|
159
159
|
&:before
|
160
160
|
content: "@"
|
161
161
|
|
162
|
-
.ui.segment.job_inputs
|
163
|
-
max-height: 800px
|
164
|
-
overflow: auto
|
165
|
-
|
166
162
|
.job_control
|
167
163
|
margin-bottom: 2em
|
168
164
|
|
169
165
|
pre.error_message
|
170
166
|
white-space: pre-wrap
|
171
167
|
word-wrap: break-word
|
172
|
-
|
173
|
-
.job_info, .job_inputs
|
174
|
-
max-height: 1200px
|
175
|
-
overflow: auto
|
data/share/views/form.haml
CHANGED
data/share/views/job_info.haml
CHANGED
@@ -3,75 +3,85 @@
|
|
3
3
|
- exception = info[:exception]
|
4
4
|
|
5
5
|
- status = info[:status]
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
6
|
+
- require 'rbbt/rest/common/tabs'
|
7
|
+
= tabs do |tab|
|
8
|
+
- tab.add "Info" do
|
9
|
+
.job_info.clean_list
|
10
|
+
.ui.header
|
11
|
+
Info:
|
12
|
+
%span.status(class=status)= job.name
|
10
13
|
|
11
|
-
|
14
|
+
= hash2dl(new_info)
|
12
15
|
|
13
|
-
.
|
14
|
-
.ui.header
|
15
|
-
%h3 Inputs (recursive)
|
16
|
-
.ui.content
|
17
|
-
- inputs = job.recursive_inputs
|
18
|
-
- autofill_id = "autofill_" << Misc.digest(job.name)
|
19
|
-
.ui.button.autofill(id=autofill_id) Auto-fill form with inputs
|
20
|
-
:deferjs
|
21
|
-
$('##{autofill_id}').click(function(){
|
22
|
-
var inputs = #{inputs.to_hash.to_json};
|
23
|
-
inputs['jobname'] = '#{job.clean_name}';
|
24
|
-
var workflow = '#{job.workflow.to_s}';
|
25
|
-
var task_name = '#{job.task_name.to_s}';
|
26
|
-
var key = [workflow, task_name].join("#");
|
16
|
+
- tab.add "Inputs" do
|
27
17
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
- if String === e
|
43
|
-
%li= e
|
44
|
-
- else
|
45
|
-
%li= e.inspect
|
46
|
-
- when String
|
47
|
-
%pre= i
|
48
|
-
- else
|
49
|
-
%pre
|
50
|
-
= i.inspect
|
18
|
+
.job_inputs
|
19
|
+
.ui.header
|
20
|
+
%h3 Inputs (recursive)
|
21
|
+
.ui.content
|
22
|
+
- inputs = job.recursive_inputs
|
23
|
+
- autofill_id = "autofill_" << Misc.digest(job.name)
|
24
|
+
.ui.button.autofill(id=autofill_id) Auto-fill form with inputs
|
25
|
+
:deferjs
|
26
|
+
$('##{autofill_id}').click(function(){
|
27
|
+
var inputs = #{inputs.to_hash.to_json};
|
28
|
+
inputs['jobname'] = '#{job.clean_name}';
|
29
|
+
var workflow = '#{job.workflow.to_s}';
|
30
|
+
var task_name = '#{job.task_name.to_s}';
|
31
|
+
var key = [workflow, task_name].join("#");
|
51
32
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
33
|
+
var info = {};
|
34
|
+
info[key] = inputs;
|
35
|
+
rbbt.LS.store('autofill', info);
|
36
|
+
var url = '/' + workflow + '/' + task_name;
|
37
|
+
window.location = rbbt.url_add_script_name(url);
|
38
|
+
})
|
39
|
+
%dl
|
40
|
+
- inputs.zip(inputs.fields).each do |i,f|
|
41
|
+
%dt= f
|
42
|
+
%dd
|
43
|
+
- case i
|
44
|
+
- when Array
|
45
|
+
%ul
|
46
|
+
- i.each do |e|
|
47
|
+
- if String === e
|
48
|
+
%li= e
|
49
|
+
- else
|
50
|
+
%li= e.inspect
|
51
|
+
- when String
|
52
|
+
%pre= i
|
53
|
+
- else
|
54
|
+
%pre
|
55
|
+
= i.inspect
|
68
56
|
|
69
|
-
|
70
|
-
|
57
|
+
- if exception
|
58
|
+
- tab.active "Exception"
|
59
|
+
- tab.add "Exception" do
|
60
|
+
- backtrace = exception[:backtrace]
|
61
|
+
.error_backtrace.clean_list
|
62
|
+
.ui.header Backtrace
|
63
|
+
%pre.ui.content
|
64
|
+
- require 'rbbt/util/colorize'
|
65
|
+
- pallete = {}
|
66
|
+
- matches = %w(views workflows rbbt).collect{|w| /\/#{w}/ }
|
67
|
+
- colors = Colorize.distinct(matches)
|
68
|
+
%ul
|
69
|
+
- backtrace.each do |line|
|
70
|
+
- color = nil
|
71
|
+
- matches.each_with_index do |m,i|
|
72
|
+
- if m.match(line)
|
73
|
+
- color = colors[i].darken(0.3).to_s
|
74
|
+
- break
|
71
75
|
|
72
|
-
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
76
|
+
- style = color ? ';color:'+color : ""
|
77
|
+
%li(style="font-size:0.9em;font-family:monospace#{style}")= line.sub('`',"'")
|
78
|
+
- else
|
79
|
+
- tab.active "Info"
|
80
|
+
|
81
|
+
|
82
|
+
- if info[:dependencies] and info[:dependencies].any?
|
83
|
+
- tab.add "Dependencies" do
|
84
|
+
.ui.header
|
85
|
+
%h3 Dependencies
|
86
|
+
.ui.content
|
87
|
+
= partial_render('partials/dependencies', :job => job)
|
@@ -73,7 +73,7 @@
|
|
73
73
|
|
74
74
|
- if dep.dependencies.any?
|
75
75
|
- if cache[dep.path]
|
76
|
-
= reveal "(deps)", nil, :title => "Dependencies already shown above", "attr-reveal_title" => "#{[dep_workflow, dep.task_name, dep.name] * "
|
76
|
+
= reveal "(deps)", nil, :title => "Dependencies already shown above", "attr-reveal_title" => "#{[dep_workflow, dep.task_name, dep.name] * " # "}" do
|
77
77
|
= cache[dep.path]
|
78
78
|
- else
|
79
79
|
= cache[dep.path] ||= partial_render('partials/dependencies', :job => dep, :cache => cache)
|
@@ -70,6 +70,11 @@
|
|
70
70
|
!~ form_input(input, types[input], defaults[input], values[input] || locals[input], description, input_id, input_options)
|
71
71
|
|
72
72
|
|
73
|
+
- if inputs.any?
|
74
|
+
.bundle.ui.very.basic.segment.field
|
75
|
+
Input file bundle in tar.gz (overrides page inputs)
|
76
|
+
%input(type='file' name='__input_file_bundle' id='SINTEF_ROC__input_file_bundle')
|
77
|
+
|
73
78
|
.input.field.submit
|
74
79
|
%input.ui.submit.button(type="submit")
|
75
80
|
- if klass =~ /workflow_task/
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbbt-rest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.8.
|
4
|
+
version: 1.8.99
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Vazquez
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-09-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|