mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Merge branch 'release_18.05' into dev
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
<span v-if="historyData.user_is_owner == false" >
|
||||
<button id="import" class="btn btn-secondary">Import and start using history</button>
|
||||
</span>
|
||||
<span v-if="historyData.history_is_current == false">
|
||||
<span v-if="historyData.user_is_owner && historyData.history_is_current == false">
|
||||
<button id="switch-history" class="btn btn-secondary" v-on:click="switchHistory">Switch to this history</button>
|
||||
</span>
|
||||
<button id="show-structure" class="btn btn-secondary" v-on:click="showStructure">Show structure</button>
|
||||
|
||||
@@ -35,9 +35,6 @@ var HistoryContents = _super.extend(BASE_MVC.LoggableMixin).extend({
|
||||
/** @type {String} order used here and when fetching from server */
|
||||
order: "hid",
|
||||
|
||||
/** root api url */
|
||||
urlRoot: `${Galaxy.root}api/histories`,
|
||||
|
||||
/** complete api url */
|
||||
url: function() {
|
||||
return `${this.urlRoot}/${this.historyId}/contents`;
|
||||
@@ -50,6 +47,7 @@ var HistoryContents = _super.extend(BASE_MVC.LoggableMixin).extend({
|
||||
});
|
||||
|
||||
options = options || {};
|
||||
this.urlRoot = `${Galaxy.root}api/histories`;
|
||||
_super.prototype.initialize.call(this, models, options);
|
||||
|
||||
this.history = options.history || null;
|
||||
|
||||
@@ -47,7 +47,7 @@ const TOURPAGE_TEMPLATE = `
|
||||
</a>
|
||||
- <%- tour.attributes.description || "No description given." %>
|
||||
<% _.each(tour.attributes.tags, function(tag) { %>
|
||||
<span class="label label-primary sm-label-pad">
|
||||
<span class="badge badge-primary">
|
||||
<%- tag.charAt(0).toUpperCase() + tag.slice(1) %>
|
||||
</span>
|
||||
<% }); %>
|
||||
|
||||
@@ -1127,18 +1127,14 @@ div.odd_row {
|
||||
// Tool panel stuff
|
||||
|
||||
// Extra label colors
|
||||
.label-beta {
|
||||
.badge-beta {
|
||||
@extend .badge-warning;
|
||||
}
|
||||
|
||||
.label-new {
|
||||
.badge-new {
|
||||
@extend .badge-info;
|
||||
}
|
||||
|
||||
.sm-label-pad {
|
||||
margin-right: 2px;
|
||||
}
|
||||
|
||||
span.toolParameterExpandableCollapsable {
|
||||
font-weight: bold;
|
||||
cursor: pointer;
|
||||
@@ -1289,6 +1285,19 @@ a.action-button {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
.btn-xs {
|
||||
// The 'new' bootstrap 4 btn-sm is about the same size as the old btn-xs,
|
||||
// should serve as a replacement for anything expecting this.
|
||||
@extend .btn-sm;
|
||||
}
|
||||
|
||||
.btn-default {
|
||||
// A hopefully temporary alias (as with above) to provide backwards
|
||||
// compatibility for external stuff using .btn-default, which is now
|
||||
// .btn-secondary.
|
||||
@extend .btn-secondary;
|
||||
}
|
||||
|
||||
//.action-button > * {
|
||||
// vertical-align: middle;
|
||||
//}
|
||||
|
||||
@@ -214,6 +214,9 @@ class JobHandlerQueue(Monitors):
|
||||
self.__monitor_step()
|
||||
except Exception:
|
||||
log.exception("Exception in monitor_step")
|
||||
# With sqlite backends we can run into locked databases occasionally
|
||||
# To avoid that the monitor step locks again we backoff a little longer.
|
||||
self._monitor_sleep(5)
|
||||
self._monitor_sleep(1)
|
||||
|
||||
def __monitor_step(self):
|
||||
|
||||
@@ -3,7 +3,10 @@ SLURM job control via the DRMAA API.
|
||||
"""
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import subprocess
|
||||
import tempfile
|
||||
import time
|
||||
|
||||
from galaxy import model
|
||||
@@ -25,6 +28,7 @@ SLURM_MEMORY_LIMIT_EXCEEDED_MSG = 'slurmstepd: error: Exceeded job memory limit'
|
||||
SLURM_MEMORY_LIMIT_EXCEEDED_PARTIAL_WARNINGS = [': Exceeded job memory limit at some point.',
|
||||
': Exceeded step memory limit at some point.']
|
||||
SLURM_MEMORY_LIMIT_SCAN_SIZE = 16 * 1024 * 1024 # 16MB
|
||||
SLURM_UNABLE_TO_ADD_TASK_TO_MEMORY_CG_MSG_RE = re.compile(r"""slurmstepd: error: task/cgroup: unable to add task\[pid=\d+\] to memory cg '\(null\)'$""")
|
||||
|
||||
# These messages are returned to the user
|
||||
OUT_OF_MEMORY_MSG = 'This job was terminated because it used more memory than it was allocated.'
|
||||
@@ -149,6 +153,14 @@ class SlurmJobRunner(DRMAAJobRunner):
|
||||
self.work_queue.put((self.fail_job, ajs))
|
||||
return
|
||||
if drmaa_state == self.drmaa_job_states.DONE:
|
||||
with open(ajs.error_file, 'r') as rfh:
|
||||
first_line = rfh.readline()
|
||||
if SLURM_UNABLE_TO_ADD_TASK_TO_MEMORY_CG_MSG_RE.match(first_line):
|
||||
with tempfile.NamedTemporaryFile('w', delete=False) as wfh:
|
||||
shutil.copyfileobj(rfh, wfh)
|
||||
wf_name = wfh.name
|
||||
shutil.move(wf_name, ajs.error_file)
|
||||
log.debug('(%s/%s) Job completed, removing SLURM spurious warning: "%s"', ajs.job_wrapper.get_id_tag(), ajs.job_id, first_line)
|
||||
with open(ajs.error_file, 'r+') as f:
|
||||
if os.path.getsize(ajs.error_file) > SLURM_MEMORY_LIMIT_SCAN_SIZE:
|
||||
f.seek(-SLURM_MEMORY_LIMIT_SCAN_SIZE, os.SEEK_END)
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
grt:
|
||||
# Go to https://telescope.galaxyproject.org to obtain an Instance ID and API key
|
||||
# Register at https://telescope.galaxyproject.org to obtain an Instance ID and API key
|
||||
instance_id:
|
||||
api_key:
|
||||
|
||||
# Galaxy Project offers a public galactic-radio-telescope instance, however
|
||||
# you are free to run your own if you need. We would love it if you were
|
||||
# willing and able to contribute your data publicly.
|
||||
url: http://localhost:8080
|
||||
url: https://telescope.galaxyproject.org/grt-admin/
|
||||
|
||||
# Are you willing to share your toolbox? I.e. what tools are installed.
|
||||
# If your instance is public, this can help us direct users to your
|
||||
# instance. If you elect to not send your entire toolbox, we will still
|
||||
|
||||
+19
-20
@@ -1736,45 +1736,47 @@ button.btn-primary {
|
||||
box-shadow: 0 0 0 0.2rem rgba(37, 83, 123, 0.5); }
|
||||
|
||||
.btn-secondary, input[type="submit"],
|
||||
button, .action-button, .menubutton {
|
||||
button, .action-button, .btn-default, .menubutton {
|
||||
color: #212529;
|
||||
background-color: #dee2e6;
|
||||
border-color: #dee2e6; }
|
||||
.btn-secondary:hover, input[type="submit"]:hover,
|
||||
button:hover, .action-button:hover, .menubutton:hover {
|
||||
button:hover, .action-button:hover, .btn-default:hover, .menubutton:hover {
|
||||
color: #212529;
|
||||
background-color: #c8cfd6;
|
||||
border-color: #c1c9d0; }
|
||||
.btn-secondary:focus, input[type="submit"]:focus,
|
||||
button:focus, .action-button:focus, .menubutton:focus, .btn-secondary.focus, input.focus[type="submit"],
|
||||
button.focus, .focus.action-button, .focus.menubutton {
|
||||
button:focus, .action-button:focus, .btn-default:focus, .menubutton:focus, .btn-secondary.focus, input.focus[type="submit"],
|
||||
button.focus, .focus.action-button, .focus.btn-default, .focus.menubutton {
|
||||
box-shadow: 0 0 0 0.2rem rgba(222, 226, 230, 0.5); }
|
||||
.btn-secondary.disabled, input.disabled[type="submit"],
|
||||
button.disabled, .disabled.action-button, .disabled.menubutton, .btn-secondary:disabled, input[type="submit"]:disabled,
|
||||
button:disabled, .action-button:disabled, .menubutton:disabled {
|
||||
button.disabled, .disabled.action-button, .disabled.btn-default, .disabled.menubutton, .btn-secondary:disabled, input[type="submit"]:disabled,
|
||||
button:disabled, .action-button:disabled, .btn-default:disabled, .menubutton:disabled {
|
||||
color: #212529;
|
||||
background-color: #dee2e6;
|
||||
border-color: #dee2e6; }
|
||||
.btn-secondary:not(:disabled):not(.disabled):active, input[type="submit"]:not(:disabled):not(.disabled):active,
|
||||
button:not(:disabled):not(.disabled):active, .action-button:not(:disabled):not(.disabled):active, .menubutton:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, input[type="submit"]:not(:disabled):not(.disabled).active,
|
||||
button:not(:disabled):not(.disabled).active, .action-button:not(:disabled):not(.disabled).active, .menubutton:not(:disabled):not(.disabled).active,
|
||||
button:not(:disabled):not(.disabled):active, .action-button:not(:disabled):not(.disabled):active, .btn-default:not(:disabled):not(.disabled):active, .menubutton:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, input[type="submit"]:not(:disabled):not(.disabled).active,
|
||||
button:not(:disabled):not(.disabled).active, .action-button:not(:disabled):not(.disabled).active, .btn-default:not(:disabled):not(.disabled).active, .menubutton:not(:disabled):not(.disabled).active,
|
||||
.show > .btn-secondary.dropdown-toggle,
|
||||
.show > input.dropdown-toggle[type="submit"],
|
||||
.show >
|
||||
button.dropdown-toggle,
|
||||
.show > .dropdown-toggle.action-button,
|
||||
.show > .dropdown-toggle.btn-default,
|
||||
.show > .dropdown-toggle.menubutton {
|
||||
color: #212529;
|
||||
background-color: #c1c9d0;
|
||||
border-color: #bac2cb; }
|
||||
.btn-secondary:not(:disabled):not(.disabled):active:focus, input[type="submit"]:not(:disabled):not(.disabled):active:focus,
|
||||
button:not(:disabled):not(.disabled):active:focus, .action-button:not(:disabled):not(.disabled):active:focus, .menubutton:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, input[type="submit"]:not(:disabled):not(.disabled).active:focus,
|
||||
button:not(:disabled):not(.disabled).active:focus, .action-button:not(:disabled):not(.disabled).active:focus, .menubutton:not(:disabled):not(.disabled).active:focus,
|
||||
button:not(:disabled):not(.disabled):active:focus, .action-button:not(:disabled):not(.disabled):active:focus, .btn-default:not(:disabled):not(.disabled):active:focus, .menubutton:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, input[type="submit"]:not(:disabled):not(.disabled).active:focus,
|
||||
button:not(:disabled):not(.disabled).active:focus, .action-button:not(:disabled):not(.disabled).active:focus, .btn-default:not(:disabled):not(.disabled).active:focus, .menubutton:not(:disabled):not(.disabled).active:focus,
|
||||
.show > .btn-secondary.dropdown-toggle:focus,
|
||||
.show > input.dropdown-toggle[type="submit"]:focus,
|
||||
.show >
|
||||
button.dropdown-toggle:focus,
|
||||
.show > .dropdown-toggle.action-button:focus,
|
||||
.show > .dropdown-toggle.btn-default:focus,
|
||||
.show > .dropdown-toggle.menubutton:focus {
|
||||
box-shadow: 0 0 0 0.2rem rgba(222, 226, 230, 0.5); }
|
||||
|
||||
@@ -2125,7 +2127,7 @@ button, .btn-group-lg > .action-button, .btn-group-lg > .menubutton {
|
||||
border-radius: 0.3rem; }
|
||||
|
||||
.btn-sm, .btn-group-sm > .btn, .btn-group-sm > input[type="submit"], .btn-group-sm >
|
||||
button, .btn-group-sm > .action-button, .btn-group-sm > .menubutton, .multi-panel-history .control-column .btn, .multi-panel-history .control-column input[type="submit"], .multi-panel-history .control-column
|
||||
button, .btn-group-sm > .action-button, .btn-group-sm > .menubutton, .btn-xs, .multi-panel-history .control-column .btn, .multi-panel-history .control-column input[type="submit"], .multi-panel-history .control-column
|
||||
button, .multi-panel-history .control-column .action-button, .multi-panel-history .control-column .menubutton, .multi-panel-history .history-column .panel-controls .btn, .multi-panel-history .history-column .panel-controls input[type="submit"], .multi-panel-history .history-column .panel-controls
|
||||
button, .multi-panel-history .history-column .panel-controls .action-button, .multi-panel-history .history-column .panel-controls .menubutton {
|
||||
padding: 0.25rem 0.5rem;
|
||||
@@ -2505,7 +2507,7 @@ button,
|
||||
margin-right: 0; }
|
||||
|
||||
.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split, .btn-group-sm > input[type="submit"] + .dropdown-toggle-split, .btn-group-sm >
|
||||
button + .dropdown-toggle-split, .btn-group-sm > .action-button + .dropdown-toggle-split, .btn-group-sm > .menubutton + .dropdown-toggle-split, .multi-panel-history .control-column .btn + .dropdown-toggle-split, .multi-panel-history .control-column input[type="submit"] + .dropdown-toggle-split, .multi-panel-history .control-column
|
||||
button + .dropdown-toggle-split, .btn-group-sm > .action-button + .dropdown-toggle-split, .btn-group-sm > .menubutton + .dropdown-toggle-split, .btn-xs + .dropdown-toggle-split, .multi-panel-history .control-column .btn + .dropdown-toggle-split, .multi-panel-history .control-column input[type="submit"] + .dropdown-toggle-split, .multi-panel-history .control-column
|
||||
button + .dropdown-toggle-split, .multi-panel-history .control-column .action-button + .dropdown-toggle-split, .multi-panel-history .control-column .menubutton + .dropdown-toggle-split, .multi-panel-history .history-column .panel-controls .btn + .dropdown-toggle-split, .multi-panel-history .history-column .panel-controls input[type="submit"] + .dropdown-toggle-split, .multi-panel-history .history-column .panel-controls
|
||||
button + .dropdown-toggle-split, .multi-panel-history .history-column .panel-controls .action-button + .dropdown-toggle-split, .multi-panel-history .history-column .panel-controls .menubutton + .dropdown-toggle-split {
|
||||
padding-right: 0.375rem;
|
||||
@@ -3715,18 +3717,18 @@ button .badge, .action-button .badge, .menubutton .badge {
|
||||
text-decoration: none;
|
||||
background-color: #198e19; }
|
||||
|
||||
.badge-info, .label-new {
|
||||
.badge-info, .badge-new {
|
||||
color: #fff;
|
||||
background-color: #1cbceb; }
|
||||
.badge-info[href]:hover, [href].label-new:hover, .badge-info[href]:focus, [href].label-new:focus {
|
||||
.badge-info[href]:hover, [href].badge-new:hover, .badge-info[href]:focus, [href].badge-new:focus {
|
||||
color: #fff;
|
||||
text-decoration: none;
|
||||
background-color: #119ac3; }
|
||||
|
||||
.badge-warning, .label-beta {
|
||||
.badge-warning, .badge-beta {
|
||||
color: #212529;
|
||||
background-color: #f69713; }
|
||||
.badge-warning[href]:hover, [href].label-beta:hover, .badge-warning[href]:focus, [href].label-beta:focus {
|
||||
.badge-warning[href]:hover, [href].badge-beta:hover, .badge-warning[href]:focus, [href].badge-beta:focus {
|
||||
color: #212529;
|
||||
text-decoration: none;
|
||||
background-color: #ce7b08; }
|
||||
@@ -9003,7 +9005,7 @@ button, .action-button, .menubutton {
|
||||
white-space: normal; }
|
||||
|
||||
.btn-secondary, input[type="submit"],
|
||||
button, .action-button, .menubutton {
|
||||
button, .action-button, .btn-default, .menubutton {
|
||||
border: 1px solid #bfbfbf; }
|
||||
|
||||
.dropdown-menu {
|
||||
@@ -13351,9 +13353,6 @@ div.odd_row {
|
||||
#footer {
|
||||
display: none; }
|
||||
|
||||
.sm-label-pad {
|
||||
margin-right: 2px; }
|
||||
|
||||
span.toolParameterExpandableCollapsable {
|
||||
font-weight: bold;
|
||||
cursor: pointer; }
|
||||
|
||||
Reference in New Issue
Block a user