taverna-player 0.5.0 → 0.6.0
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.
- data/.gitignore +1 -0
- data/.travis.yml +8 -0
- data/CHANGES.rdoc +47 -0
- data/README.rdoc +43 -3
- data/Rakefile +1 -4
- data/app/assets/stylesheets/taverna_player/coderay.css +30 -20
- data/app/controllers/taverna_player/application_controller.rb +2 -2
- data/app/controllers/taverna_player/job_queue_controller.rb +18 -0
- data/app/models/taverna_player/run.rb +10 -3
- data/app/views/taverna_player/job_queue/index.html.erb +47 -0
- data/app/views/taverna_player/runs/_interaction.html.erb +7 -1
- data/app/views/taverna_player/runs/embedded/new.html.erb +1 -1
- data/config/locales/en.yml +36 -0
- data/config/routes.rb +4 -1
- data/db/migrate/20140226135723_change_taverna_player_runs_status_message_to_use_keys.rb +19 -0
- data/lib/generators/taverna_player/install_generator.rb +6 -1
- data/lib/generators/templates/ReadMe.txt +6 -0
- data/lib/generators/templates/controllers/job_queue_controller.rb +19 -0
- data/lib/generators/templates/player_initializer.rb +8 -0
- data/lib/tasks/delete-cancelled-runs.rake +1 -1
- data/lib/taverna-player.rb +9 -1
- data/lib/taverna_player/concerns/controllers/job_queue_controller.rb +38 -0
- data/lib/taverna_player/concerns/controllers/runs_controller.rb +2 -13
- data/lib/taverna_player/concerns/models/run.rb +22 -9
- data/lib/taverna_player/concerns/models/run_port.rb +5 -0
- data/lib/taverna_player/port_renderer.rb +1 -1
- data/lib/taverna_player/version.rb +1 -1
- data/lib/taverna_player/worker.rb +78 -51
- data/taverna_player.gemspec +7 -5
- data/test/dummy/app/views/home/index.html.erb +1 -1
- data/test/dummy/app/views/layouts/application.html.erb +2 -1
- data/test/dummy/config/application.rb +1 -0
- data/test/dummy/config/initializers/taverna_player.rb +8 -3
- data/test/dummy/config/locales/taverna_player.en.yml +36 -0
- data/test/dummy/db/migrate/20140226143013_change_taverna_player_runs_status_message_to_use_keys.taverna_player.rb +20 -0
- data/test/dummy/db/schema.rb +9 -9
- data/test/dummy/lib/callbacks.rb +1 -5
- data/test/fixtures/files/non-ascii.csv +30 -0
- data/test/fixtures/taverna_player/interactions.yml +4 -1
- data/test/fixtures/taverna_player/runs.yml +6 -1
- data/test/functional/taverna_player/job_queue_controller_test.rb +35 -0
- data/test/functional/taverna_player/runs_controller_test.rb +20 -0
- data/test/functional/taverna_player/service_credentials_controller_test.rb +3 -3
- data/test/test_helper.rb +4 -1
- data/test/unit/helpers/taverna_player/runs_helper_test.rb +20 -1
- data/test/unit/taverna_player/run_port_test.rb +41 -5
- data/test/unit/{utils_test.rb → taverna_player/utils_test.rb} +0 -0
- data/test/unit/taverna_player/worker_test.rb +201 -0
- metadata +67 -18
- data/test/fixtures/files/crassostrea_gigas.csv +0 -737
data/.gitignore
CHANGED
data/.travis.yml
ADDED
data/CHANGES.rdoc
CHANGED
@@ -1,5 +1,52 @@
|
|
1
1
|
= Changes log for Taverna Player
|
2
2
|
|
3
|
+
== Version 0.6.0
|
4
|
+
|
5
|
+
* [TAV-485] Set up separate worker integration test.
|
6
|
+
* [TAV-469] Fix notification interactions.
|
7
|
+
* Delete cancelled runs rake task not working.
|
8
|
+
* [TAV-495] Stop interactions from changing the document title.
|
9
|
+
* [TAV-493] Namespace preset values for embedded runs.
|
10
|
+
* Setup Travis-CI.
|
11
|
+
* Add a travis badge to the readme.
|
12
|
+
* Add Coveralls integration to the tests.
|
13
|
+
* Allow configuration of the delayed_job queue name.
|
14
|
+
* Update tests to properly test all callback code.
|
15
|
+
* Add documentation for the job_queue_name option.
|
16
|
+
* [TAV-496] Allow workflow file to be passed in to worker.
|
17
|
+
* Guard against missing input presets in embedded view.
|
18
|
+
* Add a job queue listing page.
|
19
|
+
* Move admin type resources into their own namespace.
|
20
|
+
* [TAV-485] Better tests for the worker code.
|
21
|
+
* [TAV-485] Ensure run is backed-off before starting.
|
22
|
+
* [TAV-485] Ensure run is backed-off before creation.
|
23
|
+
* [TAV-485] Test a failing run.
|
24
|
+
* [TAV-485] Test a cancelled run.
|
25
|
+
* Add a coveralls badge to the readme.
|
26
|
+
* Factor out the worker failure handler.
|
27
|
+
* Add a worker test for failure within the failure callback.
|
28
|
+
* Add a worker test for failure within the cancelled callback.
|
29
|
+
* Assert that there is a run failure message on failure.
|
30
|
+
* Add a worker test for failure within the pre_run callback.
|
31
|
+
* Add a worker test for failure within the post_run callback.
|
32
|
+
* [TAV-457] Add I18n file for run status messages.
|
33
|
+
* [TAV-457] Install the locale file in the install generator.
|
34
|
+
* Don't save translated run status message in the database.
|
35
|
+
* Use the locale file for validation error message.
|
36
|
+
* [TAV-499] Clean up timed out runs properly.
|
37
|
+
* Update missed translation keys in the installed locale file.
|
38
|
+
* Update the coderay dependency.
|
39
|
+
* Update the delayed_job dependency.
|
40
|
+
* Update Paperclip dependency.
|
41
|
+
* Update the JBuilder dependency.
|
42
|
+
* Allow use of latest jquery-rails gem.
|
43
|
+
* Factor out running callbacks in the worker.
|
44
|
+
* Simplified method of choosing which layout to use
|
45
|
+
* Force input data to be treated as binary initially.
|
46
|
+
* Add tests for small non-ascii/utf-8 values.
|
47
|
+
* Make the controller dependency chain more explicit.
|
48
|
+
* Added test to see if input RunPorts are created along with the run
|
49
|
+
|
3
50
|
== Version 0.5.0
|
4
51
|
|
5
52
|
* [TAV-480] Refactor output port downloading.
|
data/README.rdoc
CHANGED
@@ -8,6 +8,8 @@ Copyright:: (c) 2013, 2014 The University of Manchester, UK
|
|
8
8
|
|
9
9
|
{<img src="https://badge.fury.io/rb/taverna-player.png" alt="Gem Version" />}[http://badge.fury.io/rb/taverna-player]
|
10
10
|
{<img src="https://codeclimate.com/github/myGrid/taverna-player.png" />}[https://codeclimate.com/github/myGrid/taverna-player]
|
11
|
+
{<img src="https://travis-ci.org/myGrid/taverna-player.png?branch=master" alt="Build Status" />}[https://travis-ci.org/myGrid/taverna-player]
|
12
|
+
{<img src="https://coveralls.io/repos/myGrid/taverna-player/badge.png?branch=master" alt="Coverage Status" />}[https://coveralls.io/r/myGrid/taverna-player?branch=master]
|
11
13
|
|
12
14
|
== Synopsis
|
13
15
|
|
@@ -41,9 +43,10 @@ Next you need to run the install generator:
|
|
41
43
|
This installs two initializer files (into your application's
|
42
44
|
<tt>config/initializers</tt> directory) which describe all of Taverna Player's
|
43
45
|
configuration options; there are some things that MUST be configured before it
|
44
|
-
will work - see below for more information. The install generator also
|
45
|
-
|
46
|
-
|
46
|
+
will work - see below for more information. The install generator also creates
|
47
|
+
a locale file at <tt>config/locales/taverna_player.en.yml</tt> and prints out
|
48
|
+
a list of other steps for setting up Taverna Player; these are repeated and
|
49
|
+
detailed below.
|
47
50
|
|
48
51
|
== Running Taverna Player
|
49
52
|
|
@@ -79,6 +82,10 @@ would start your workers like this:
|
|
79
82
|
|
80
83
|
RAILS_ENV=production bundle exec ./script/delayed_job -n 20 --queue=player start
|
81
84
|
|
85
|
+
By default Taverna Player puts its jobs into the "player" queue which is why
|
86
|
+
this is specified above. If you change this configuration (see below) you will
|
87
|
+
need to specify a different queue in the command above.
|
88
|
+
|
82
89
|
See the documentation for {delayed_job}[https://rubygems.org/gems/delayed_job]
|
83
90
|
for more options and information.
|
84
91
|
|
@@ -88,6 +95,29 @@ Mount the Taverna Player engine in your <tt>config/routes.rb</tt>. For example:
|
|
88
95
|
|
89
96
|
mount TavernaPlayer::Engine, :at => "/"
|
90
97
|
|
98
|
+
Taverna Player provides three resources with paths:
|
99
|
+
|
100
|
+
* <tt>/runs/*</tt>
|
101
|
+
* <tt>/service_credentials/*</tt>
|
102
|
+
* <tt>/job_queue</tt>
|
103
|
+
|
104
|
+
Runs are what you will interact with most as this is the model that represents
|
105
|
+
a workflow execution.
|
106
|
+
|
107
|
+
Service credentials and the job queue are administrator resources. If you have
|
108
|
+
users you may like to restrict access to these resources (see the section on
|
109
|
+
overriding controllers, below). These two resources can be moved to a
|
110
|
+
different namespace if you like. In the Taverna Player initializer you can
|
111
|
+
set (for example):
|
112
|
+
|
113
|
+
config.admin_scope = "admin"
|
114
|
+
|
115
|
+
And the resource paths would become:
|
116
|
+
|
117
|
+
* <tt>/runs/*</tt>
|
118
|
+
* <tt>/admin/service_credentials/*</tt>
|
119
|
+
* <tt>/admin/job_queue</tt>
|
120
|
+
|
91
121
|
You can also nest the Taverna Player runs resources within your workflows
|
92
122
|
resources if you wish, like this:
|
93
123
|
|
@@ -317,6 +347,15 @@ want it to store its files:
|
|
317
347
|
Use ":rails_root" for the root of your application, or specify a full path for
|
318
348
|
anywhere else.
|
319
349
|
|
350
|
+
==== Jobs
|
351
|
+
|
352
|
+
Taverna Player uses the "player" queue for its delayed jobs. You can change
|
353
|
+
this with:
|
354
|
+
|
355
|
+
config.job_queue_name = "my_queue"
|
356
|
+
|
357
|
+
Remember to start workers listening to the correct queue if you change it.
|
358
|
+
|
320
359
|
==== Run callbacks and renderers
|
321
360
|
|
322
361
|
These are described in their own sections, below.
|
@@ -344,6 +383,7 @@ You can override the following core components:
|
|
344
383
|
* RunPort::Output (model)
|
345
384
|
* RunsController
|
346
385
|
* ServiceCredentialsController
|
386
|
+
* JobQueueController
|
347
387
|
|
348
388
|
Use the generators, detailed above, to create stubs for you to expand. These
|
349
389
|
components have been designed for overriding with the decorator pattern using
|
data/Rakefile
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
#!/usr/bin/env rake
|
2
2
|
#------------------------------------------------------------------------------
|
3
|
-
# Copyright (c) 2013 The University of Manchester, UK.
|
3
|
+
# Copyright (c) 2013, 2014 The University of Manchester, UK.
|
4
4
|
#
|
5
5
|
# BSD Licenced. See LICENCE.rdoc for details.
|
6
6
|
#
|
@@ -49,8 +49,6 @@ end
|
|
49
49
|
APP_RAKEFILE = File.expand_path("../test/dummy/Rakefile", __FILE__)
|
50
50
|
load 'rails/tasks/engine.rake'
|
51
51
|
|
52
|
-
|
53
|
-
|
54
52
|
Bundler::GemHelper.install_tasks
|
55
53
|
|
56
54
|
require 'rake/testtask'
|
@@ -62,5 +60,4 @@ Rake::TestTask.new(:test) do |t|
|
|
62
60
|
t.verbose = false
|
63
61
|
end
|
64
62
|
|
65
|
-
|
66
63
|
task :default => :test
|
@@ -13,7 +13,7 @@ table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px; }
|
|
13
13
|
table.CodeRay td { padding: 2px 4px; vertical-align: top; }
|
14
14
|
|
15
15
|
.CodeRay .line-numbers {
|
16
|
-
background-color: hsl(
|
16
|
+
background-color: hsl(180,65%,90%);
|
17
17
|
color: gray;
|
18
18
|
text-align: right;
|
19
19
|
-webkit-user-select: none;
|
@@ -21,10 +21,13 @@ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
|
|
21
21
|
user-select: none;
|
22
22
|
}
|
23
23
|
.CodeRay .line-numbers a {
|
24
|
-
background-color: hsl(
|
24
|
+
background-color: hsl(180,65%,90%) !important;
|
25
25
|
color: gray !important;
|
26
26
|
text-decoration: none !important;
|
27
27
|
}
|
28
|
+
.CodeRay .line-numbers pre {
|
29
|
+
word-break: normal;
|
30
|
+
}
|
28
31
|
.CodeRay .line-numbers a:target { color: blue !important; }
|
29
32
|
.CodeRay .line-numbers .highlighted { color: red !important; }
|
30
33
|
.CodeRay .line-numbers .highlighted a { color: red !important; }
|
@@ -37,77 +40,84 @@ table.CodeRay td { padding: 2px 4px; vertical-align: top; }
|
|
37
40
|
.CodeRay .annotation { color:#007 }
|
38
41
|
.CodeRay .attribute-name { color:#b48 }
|
39
42
|
.CodeRay .attribute-value { color:#700 }
|
40
|
-
.CodeRay .binary { color:#
|
43
|
+
.CodeRay .binary { color:#549 }
|
44
|
+
.CodeRay .binary .char { color:#325 }
|
45
|
+
.CodeRay .binary .delimiter { color:#325 }
|
46
|
+
.CodeRay .char { color:#D20 }
|
41
47
|
.CodeRay .char .content { color:#D20 }
|
42
48
|
.CodeRay .char .delimiter { color:#710 }
|
43
|
-
.CodeRay .char { color:#D20 }
|
44
49
|
.CodeRay .class { color:#B06; font-weight:bold }
|
45
50
|
.CodeRay .class-variable { color:#369 }
|
46
51
|
.CodeRay .color { color:#0A0 }
|
47
52
|
.CodeRay .comment { color:#777 }
|
48
53
|
.CodeRay .comment .char { color:#444 }
|
49
54
|
.CodeRay .comment .delimiter { color:#444 }
|
50
|
-
.CodeRay .complex { color:#A08 }
|
51
55
|
.CodeRay .constant { color:#036; font-weight:bold }
|
52
56
|
.CodeRay .decorator { color:#B0B }
|
53
57
|
.CodeRay .definition { color:#099; font-weight:bold }
|
54
58
|
.CodeRay .delimiter { color:black }
|
55
59
|
.CodeRay .directive { color:#088; font-weight:bold }
|
56
|
-
.CodeRay .
|
57
|
-
.CodeRay .doc-string { color:#D42; font-weight:bold }
|
60
|
+
.CodeRay .docstring { color:#D42; }
|
58
61
|
.CodeRay .doctype { color:#34b }
|
62
|
+
.CodeRay .done { text-decoration: line-through; color: gray }
|
59
63
|
.CodeRay .entity { color:#800; font-weight:bold }
|
60
64
|
.CodeRay .error { color:#F00; background-color:#FAA }
|
61
65
|
.CodeRay .escape { color:#666 }
|
62
66
|
.CodeRay .exception { color:#C00; font-weight:bold }
|
63
67
|
.CodeRay .float { color:#60E }
|
64
68
|
.CodeRay .function { color:#06B; font-weight:bold }
|
69
|
+
.CodeRay .function .delimiter { color:#024; font-weight:bold }
|
65
70
|
.CodeRay .global-variable { color:#d70 }
|
66
71
|
.CodeRay .hex { color:#02b }
|
67
|
-
.CodeRay .
|
72
|
+
.CodeRay .id { color:#33D; font-weight:bold }
|
68
73
|
.CodeRay .include { color:#B44; font-weight:bold }
|
69
74
|
.CodeRay .inline { background-color: hsla(0,0%,0%,0.07); color: black }
|
70
75
|
.CodeRay .inline-delimiter { font-weight: bold; color: #666 }
|
71
76
|
.CodeRay .instance-variable { color:#33B }
|
72
77
|
.CodeRay .integer { color:#00D }
|
78
|
+
.CodeRay .imaginary { color:#f00 }
|
79
|
+
.CodeRay .important { color:#D00 }
|
80
|
+
.CodeRay .key { color: #606 }
|
73
81
|
.CodeRay .key .char { color: #60f }
|
74
82
|
.CodeRay .key .delimiter { color: #404 }
|
75
|
-
.CodeRay .key { color: #606 }
|
76
83
|
.CodeRay .keyword { color:#080; font-weight:bold }
|
77
84
|
.CodeRay .label { color:#970; font-weight:bold }
|
78
|
-
.CodeRay .local-variable { color:#
|
85
|
+
.CodeRay .local-variable { color:#950 }
|
86
|
+
.CodeRay .map .content { color:#808 }
|
87
|
+
.CodeRay .map .delimiter { color:#40A}
|
88
|
+
.CodeRay .map { background-color:hsla(200,100%,50%,0.06); }
|
79
89
|
.CodeRay .namespace { color:#707; font-weight:bold }
|
80
90
|
.CodeRay .octal { color:#40E }
|
81
91
|
.CodeRay .operator { }
|
82
92
|
.CodeRay .predefined { color:#369; font-weight:bold }
|
83
93
|
.CodeRay .predefined-constant { color:#069 }
|
84
|
-
.CodeRay .predefined-type { color:#
|
94
|
+
.CodeRay .predefined-type { color:#0a8; font-weight:bold }
|
85
95
|
.CodeRay .preprocessor { color:#579 }
|
86
96
|
.CodeRay .pseudo-class { color:#00C; font-weight:bold }
|
97
|
+
.CodeRay .regexp { background-color:hsla(300,100%,50%,0.06); }
|
87
98
|
.CodeRay .regexp .content { color:#808 }
|
88
99
|
.CodeRay .regexp .delimiter { color:#404 }
|
89
100
|
.CodeRay .regexp .modifier { color:#C2C }
|
90
|
-
.CodeRay .regexp { background-color:hsla(300,100%,50%,0.06); }
|
91
101
|
.CodeRay .reserved { color:#080; font-weight:bold }
|
102
|
+
.CodeRay .shell { background-color:hsla(120,100%,50%,0.06); }
|
92
103
|
.CodeRay .shell .content { color:#2B2 }
|
93
104
|
.CodeRay .shell .delimiter { color:#161 }
|
94
|
-
.CodeRay .
|
105
|
+
.CodeRay .string { background-color:hsla(0,100%,50%,0.05); }
|
95
106
|
.CodeRay .string .char { color: #b0b }
|
96
107
|
.CodeRay .string .content { color: #D20 }
|
97
108
|
.CodeRay .string .delimiter { color: #710 }
|
98
109
|
.CodeRay .string .modifier { color: #E40 }
|
99
|
-
.CodeRay .string { background-color:hsla(0,100%,50%,0.05); }
|
100
|
-
.CodeRay .symbol .content { color:#A60 }
|
101
|
-
.CodeRay .symbol .delimiter { color:#630 }
|
102
110
|
.CodeRay .symbol { color:#A60 }
|
103
|
-
.CodeRay .
|
111
|
+
.CodeRay .symbol .content { color:#A60 }
|
112
|
+
.CodeRay .symbol .delimiter { color:#740 }
|
113
|
+
.CodeRay .tag { color:#070; font-weight:bold }
|
104
114
|
.CodeRay .type { color:#339; font-weight:bold }
|
105
|
-
.CodeRay .value { color: #088
|
106
|
-
.CodeRay .variable
|
115
|
+
.CodeRay .value { color: #088 }
|
116
|
+
.CodeRay .variable { color:#037 }
|
107
117
|
|
108
118
|
.CodeRay .insert { background: hsla(120,100%,50%,0.12) }
|
109
119
|
.CodeRay .delete { background: hsla(0,100%,50%,0.12) }
|
110
|
-
.CodeRay .change { color: #bbf; background: #007
|
120
|
+
.CodeRay .change { color: #bbf; background: #007 }
|
111
121
|
.CodeRay .head { color: #f8f; background: #505 }
|
112
122
|
.CodeRay .head .filename { color: white; }
|
113
123
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#------------------------------------------------------------------------------
|
2
|
-
# Copyright (c) 2013 The University of Manchester, UK.
|
2
|
+
# Copyright (c) 2013, 2014 The University of Manchester, UK.
|
3
3
|
#
|
4
4
|
# BSD Licenced. See LICENCE.rdoc for details.
|
5
5
|
#
|
@@ -11,6 +11,6 @@
|
|
11
11
|
#------------------------------------------------------------------------------
|
12
12
|
|
13
13
|
module TavernaPlayer
|
14
|
-
class ApplicationController < ApplicationController
|
14
|
+
class ApplicationController < ::ApplicationController
|
15
15
|
end
|
16
16
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
#------------------------------------------------------------------------------
|
2
|
+
# Copyright (c) 2014 The University of Manchester, UK.
|
3
|
+
#
|
4
|
+
# BSD Licenced. See LICENCE.rdoc for details.
|
5
|
+
#
|
6
|
+
# Taverna Player was developed in the BioVeL project, funded by the European
|
7
|
+
# Commission 7th Framework Programme (FP7), through grant agreement
|
8
|
+
# number 283359.
|
9
|
+
#
|
10
|
+
# Author: Robert Haines
|
11
|
+
#------------------------------------------------------------------------------
|
12
|
+
|
13
|
+
module TavernaPlayer
|
14
|
+
class JobQueueController < TavernaPlayer::ApplicationController
|
15
|
+
# See lib/taverna_player/concerns/controllers/job_queue_controller.rb
|
16
|
+
include TavernaPlayer::Concerns::Controllers::JobQueueController
|
17
|
+
end
|
18
|
+
end
|
@@ -36,8 +36,8 @@ module TavernaPlayer
|
|
36
36
|
# :call-seq:
|
37
37
|
# complete? -> boolean
|
38
38
|
#
|
39
|
-
# Is this run complete? If a run is finished or cancelled or failed
|
40
|
-
# it is complete.
|
39
|
+
# Is this run complete? If a run is finished or cancelled or failed or
|
40
|
+
# has timed out then it is complete.
|
41
41
|
|
42
42
|
##
|
43
43
|
# :method: embedded?
|
@@ -111,7 +111,14 @@ module TavernaPlayer
|
|
111
111
|
# state -> symbol
|
112
112
|
#
|
113
113
|
# The state of this run. Possible states are :pending, :initialized,
|
114
|
-
# :running, :finished, :cancelled or :failed.
|
114
|
+
# :running, :finished, :cancelled, :timeout or :failed.
|
115
|
+
|
116
|
+
##
|
117
|
+
# :method: timeout?
|
118
|
+
# :call-seq:
|
119
|
+
# timeout? -> boolean
|
120
|
+
#
|
121
|
+
# Did this run timeout?
|
115
122
|
|
116
123
|
end
|
117
124
|
end
|
@@ -0,0 +1,47 @@
|
|
1
|
+
<%
|
2
|
+
# Copyright (c) 2014 The University of Manchester, UK.
|
3
|
+
#
|
4
|
+
# BSD Licenced. See LICENCE.rdoc for details.
|
5
|
+
#
|
6
|
+
# Taverna Player was developed in the BioVeL project, funded by the European
|
7
|
+
# Commission 7th Framework Programme (FP7), through grant agreement
|
8
|
+
# number 283359.
|
9
|
+
#
|
10
|
+
# Author: Robert Haines
|
11
|
+
%>
|
12
|
+
|
13
|
+
<h1>Taverna Player Jobs</h1>
|
14
|
+
|
15
|
+
Number of jobs in the queue: <%= @jobs.count %>
|
16
|
+
|
17
|
+
<table>
|
18
|
+
<tr>
|
19
|
+
<th>Job ID</th>
|
20
|
+
<th>Priority</th>
|
21
|
+
<th>Run at</th>
|
22
|
+
<th>Locked at</th>
|
23
|
+
<th>Failed at</th>
|
24
|
+
<th>Run ID</th>
|
25
|
+
<th>Workflow ID</th>
|
26
|
+
<th>Run state</th>
|
27
|
+
<th>Status message</th>
|
28
|
+
</tr>
|
29
|
+
|
30
|
+
<% @jobs.each do |job| %>
|
31
|
+
<%
|
32
|
+
worker = job.payload_object
|
33
|
+
run = worker.run
|
34
|
+
%>
|
35
|
+
<tr>
|
36
|
+
<td><%= job.id %></td>
|
37
|
+
<td><%= job.priority %></td>
|
38
|
+
<td><%= job.run_at %></td>
|
39
|
+
<td><%= job.locked_at %></td>
|
40
|
+
<td><%= job.failed_at %></td>
|
41
|
+
<td><%= run.id %></td>
|
42
|
+
<td><%= run.workflow.id %></td>
|
43
|
+
<td><%= run.state %></td>
|
44
|
+
<td><%= run.status_message %></td>
|
45
|
+
</tr>
|
46
|
+
<% end %>
|
47
|
+
</table>
|
@@ -49,7 +49,13 @@
|
|
49
49
|
pmrpc.register( {
|
50
50
|
publicProcedureName : "setTitle",
|
51
51
|
procedure : function(title) {
|
52
|
-
|
52
|
+
// This method is called by an interaction to set its title.
|
53
|
+
// It must be registered but doesn't need to do anything if you
|
54
|
+
// don't want it to.
|
55
|
+
|
56
|
+
//document.title = title;
|
57
|
+
|
58
|
+
// This method must return "OK".
|
53
59
|
return "OK";
|
54
60
|
}
|
55
61
|
});
|
@@ -21,7 +21,7 @@
|
|
21
21
|
<%= f.hidden_field :name, :value => "#{workflow_title} (embedded)" %>
|
22
22
|
|
23
23
|
<% workflow_inputs.each do |input| %>
|
24
|
-
<% input_param = params[input[:name].to_sym] %>
|
24
|
+
<% input_param = params[:input][input[:name].to_sym] if params[:input] %>
|
25
25
|
<% if input_param.nil? %>
|
26
26
|
<div>Input: <%= input[:name] %></div>
|
27
27
|
|
@@ -0,0 +1,36 @@
|
|
1
|
+
#------------------------------------------------------------------------------
|
2
|
+
# Copyright (c) 2014 The University of Manchester, UK.
|
3
|
+
#
|
4
|
+
# BSD Licenced. See LICENCE.rdoc for details.
|
5
|
+
#
|
6
|
+
# Taverna Player was developed in the BioVeL project, funded by the European
|
7
|
+
# Commission 7th Framework Programme (FP7), through grant agreement
|
8
|
+
# number 283359.
|
9
|
+
#
|
10
|
+
# Author: Robert Haines
|
11
|
+
#------------------------------------------------------------------------------
|
12
|
+
|
13
|
+
en:
|
14
|
+
taverna_player:
|
15
|
+
status:
|
16
|
+
pending: "Queued"
|
17
|
+
pre-callback: "Running pre-run tasks"
|
18
|
+
connect: "Connecting to Taverna Server"
|
19
|
+
full: "Server full - please wait; run will start soon"
|
20
|
+
initialized: "Initializing new workflow run"
|
21
|
+
inputs: "Uploading run inputs"
|
22
|
+
start: "Starting run"
|
23
|
+
busy: "Server busy - please wait; run will start soon"
|
24
|
+
running: "Running"
|
25
|
+
interact: "Waiting for user input"
|
26
|
+
outputs: "Gathering run outputs and log"
|
27
|
+
post-callback: "Running post-run tasks"
|
28
|
+
finished: "Finished"
|
29
|
+
cancel: "Cancelling"
|
30
|
+
cancel-callback: "Running post-cancel tasks"
|
31
|
+
cancelled: "Cancelled"
|
32
|
+
timeout: "Run execution timed out"
|
33
|
+
fail-callback: "Running post-failure tasks"
|
34
|
+
failed: "Failed"
|
35
|
+
errors:
|
36
|
+
invalid-parent: "Parents must have lower ids than their children"
|