mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-10-25 00:12:08 +08:00
Merge branch 'release_18.05' into dev
This commit is contained in:
@@ -17,12 +17,18 @@ fi
|
||||
mkdir -p "$GALAXY_TEST_ERRORS_DIRECTORY"
|
||||
mkdir -p "$GALAXY_TEST_SCREENSHOTS_DIRECTORY"
|
||||
|
||||
# /etc/passwd hack needed as long as make client requires git.
|
||||
# https://github.com/galaxyproject/galaxy/issues/5912
|
||||
docker run -v /etc/passwd:/etc/passwd -v `pwd`:`pwd`:rw -w `pwd` -u $UID $GALAXY_TEST_CLIENT_BUILD_IMAGE /bin/bash -c 'make client-production-maps'
|
||||
mkdir -p ~/.jenkins-yarn-cache
|
||||
YARN_CACHE_FOLDER=~/.jenkins-yarn-cache
|
||||
|
||||
# Set git environment variables to enable Git. https://github.com/galaxyproject/galaxy/issues/5912
|
||||
# Setup volume and environment variable to cache this users yarn build.
|
||||
docker run -e GIT_COMMITTER_NAME=Jenkins -e GIT_COMMITTER_EMAIL=jenkins@galaxyproject.org \
|
||||
-e YARN_CACHE_FOLDER=$YARN_CACHE_FOLDER -v $YARN_CACHE_FOLDER:$YARN_CACHE_FOLDER:rw \
|
||||
-v `pwd`:`pwd`:rw -w `pwd` -u $UID $GALAXY_TEST_CLIENT_BUILD_IMAGE \
|
||||
/bin/bash -c 'make client-production-maps'
|
||||
|
||||
# Start Selenium server in the test Docker container.
|
||||
DOCKER_RUN_EXTRA_ARGS="-e USE_SELENIUM=1 -e GALAXY_TEST_SELENIUM_RETRIES=${GALAXY_TEST_SELENIUM_RETRIES} -e GALAXY_TEST_ERRORS_DIRECTORY=${GALAXY_TEST_ERRORS_DIRECTORY} -e GALAXY_TEST_SCREENSHOTS_DIRECTORY=${GALAXY_TEST_SCREENSHOTS_DIRECTORY} ${DOCKER_RUN_EXTRA_ARGS}"
|
||||
DOCKER_RUN_EXTRA_ARGS="-v $YARN_CACHE_FOLDER:$YARN_CACHE_FOLDER -e YARN_CACHE_FOLDER=$YARN_CACHE_FOLDER -e USE_SELENIUM=1 -e GALAXY_TEST_SELENIUM_RETRIES=${GALAXY_TEST_SELENIUM_RETRIES} -e GALAXY_TEST_ERRORS_DIRECTORY=${GALAXY_TEST_ERRORS_DIRECTORY} -e GALAXY_TEST_SCREENSHOTS_DIRECTORY=${GALAXY_TEST_SCREENSHOTS_DIRECTORY} ${DOCKER_RUN_EXTRA_ARGS}"
|
||||
export DOCKER_RUN_EXTRA_ARGS
|
||||
|
||||
./run_tests.sh --dockerize --db postgres --external_tmp --clean_pyc --skip_flakey_fails --selenium "$@"
|
||||
|
||||
@@ -202,11 +202,11 @@
|
||||
:multiple="mappingTargets()[map.type].multiple"
|
||||
:ordered="true"
|
||||
:value-as-list="true">
|
||||
<span v-b-tooltip.hover.focus :title="titleRemoveMapping" class="fa fa-times" @click="removeMapping(map.index)"></span>
|
||||
<span v-b-tooltip.hover :title="titleRemoveMapping" class="fa fa-times" @click="removeMapping(map.index)"></span>
|
||||
</column-selector>
|
||||
</div>
|
||||
<div class="buttons rule-edit-buttons d-flex justify-content-end">
|
||||
<button v-b-tooltip.hover.focus :title="titleAddColumnDefinition" type="button" class="dropdown-toggle btn btn-primary mr-1" data-toggle="dropdown" v-if="unmappedTargets.length > 0">
|
||||
<button v-b-tooltip.hover :title="titleAddColumnDefinition" type="button" class="dropdown-toggle btn btn-primary mr-1" data-toggle="dropdown" v-if="unmappedTargets.length > 0">
|
||||
<span class="fa fa-plus rule-add-mapping"></span> {{ "Add Definition" }}<span class="caret"></span>
|
||||
</button>
|
||||
<div class="dropdown-menu" role="menu">
|
||||
@@ -220,7 +220,7 @@
|
||||
{{ mappingTargets()[target].label }}
|
||||
</a>
|
||||
</div>
|
||||
<b-button v-b-tooltip.hover.focus.bottom :title="titleApplyColumnDefinitions" class="rule-mapping-ok" v-if="!hasActiveMappingEdit" @click="displayRuleType = null">{{ l("Apply") }}</b-button>
|
||||
<b-button v-b-tooltip.hover.bottom :title="titleApplyColumnDefinitions" class="rule-mapping-ok" v-if="!hasActiveMappingEdit" @click="displayRuleType = null">{{ l("Apply") }}</b-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="rule-summary" v-if="displayRuleType == null">
|
||||
@@ -256,7 +256,7 @@
|
||||
</ol>
|
||||
<div class="rules-buttons">
|
||||
<div class="btn-group dropup">
|
||||
<button type="button" v-b-tooltip.hover.focus.bottom :title="titleRulesMenu" class="rule-menu-rules-button primary-button dropdown-toggle" data-toggle="dropdown">
|
||||
<button type="button" v-b-tooltip.hover.bottom :title="titleRulesMenu" class="rule-menu-rules-button primary-button dropdown-toggle" data-toggle="dropdown">
|
||||
<span class="fa fa-plus"></span> {{ l("Rules") }}<span class="caret"></span>
|
||||
</button>
|
||||
<div class="dropdown-menu" role="menu">
|
||||
@@ -268,7 +268,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn-group dropup">
|
||||
<button type="button" v-b-tooltip.hover.focus.bottom :title="titleFilterMenu" class="rule-menu-filter-button primary-button dropdown-toggle" data-toggle="dropdown">
|
||||
<button type="button" v-b-tooltip.hover.bottom :title="titleFilterMenu" class="rule-menu-filter-button primary-button dropdown-toggle" data-toggle="dropdown">
|
||||
<span class="fa fa-plus"></span> {{ l("Filter") }}<span class="caret"></span>
|
||||
</button>
|
||||
<div class="dropdown-menu" role="menu">
|
||||
@@ -280,7 +280,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="btn-group dropup">
|
||||
<button type="button" v-b-tooltip.hover.focus.bottom :title="titleColumMenu" class="rule-menu-column-button primary-button dropdown-toggle" data-toggle="dropdown">
|
||||
<button type="button" v-b-tooltip.hover.bottom :title="titleColumMenu" class="rule-menu-column-button primary-button dropdown-toggle" data-toggle="dropdown">
|
||||
<span class="fa fa-plus"></span> {{ l("Column") }}<span class="caret"></span>
|
||||
</button>
|
||||
<div class="dropdown-menu" role="menu">
|
||||
@@ -311,13 +311,13 @@
|
||||
</div>
|
||||
</rule-modal-middle>
|
||||
<rule-modal-footer v-if="ruleView == 'source'">
|
||||
<b-button v-b-tooltip.hover.focus :title="titleSourceCancel" @click="cancelSourceEdit" class="rule-btn-cancel">
|
||||
<b-button v-b-tooltip.hover :title="titleSourceCancel" @click="cancelSourceEdit" class="rule-btn-cancel">
|
||||
{{ l("Cancel") }}
|
||||
</b-button>
|
||||
<b-button v-b-tooltip.hover.focus :title="titleSourceReset" class="creator-reset-btn rule-btn-reset">
|
||||
<b-button v-b-tooltip.hover :title="titleSourceReset" class="creator-reset-btn rule-btn-reset">
|
||||
{{ l("Reset") }}
|
||||
</b-button>
|
||||
<b-button v-b-tooltip.hover.focus :title="titleSourceApply" @click="attemptRulePreview" class="rule-btn-okay">
|
||||
<b-button v-b-tooltip.hover :title="titleSourceApply" @click="attemptRulePreview" class="rule-btn-okay">
|
||||
{{ l("Apply")}}
|
||||
</b-button>
|
||||
</rule-modal-footer>
|
||||
@@ -345,20 +345,20 @@
|
||||
</div>
|
||||
<div class="rule-footer-name-group" v-if="showCollectionNameInput">
|
||||
<b-input class="collection-name"
|
||||
:placeholder="namePlaceholder" :title="namePlaceholder" v-b-tooltip.hover.focus v-model="collectionName" />
|
||||
:placeholder="namePlaceholder" :title="namePlaceholder" v-b-tooltip.hover v-model="collectionName" />
|
||||
<label>
|
||||
{{ l("Name") }}:
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<b-button v-b-tooltip.hover.focus :help="titleCancel" @click="cancel" class="creator-cancel-btn rule-btn-cancel" tabindex="-1">
|
||||
<b-button v-b-tooltip.hover :help="titleCancel" @click="cancel" class="creator-cancel-btn rule-btn-cancel" tabindex="-1">
|
||||
{{ l("Cancel") }}
|
||||
</b-button>
|
||||
<b-button v-b-tooltip.hover.focus @click="resetRulesAndState" :title="titleReset" class="creator-reset-btn rule-btn-reset">
|
||||
<b-button v-b-tooltip.hover @click="resetRulesAndState" :title="titleReset" class="creator-reset-btn rule-btn-reset">
|
||||
{{ l("Reset") }}
|
||||
</b-button>
|
||||
<b-button v-b-tooltip.hover.focus @click="createCollection" :title="titleFinish" class="create-collection rule-btn-okay" variant="primary" :disabled="!validInput">
|
||||
<b-button v-b-tooltip.hover @click="createCollection" :title="titleFinish" class="create-collection rule-btn-okay" variant="primary" :disabled="!validInput">
|
||||
{{ finishButtonTitle }}
|
||||
</b-button>
|
||||
</rule-modal-footer>
|
||||
@@ -382,10 +382,10 @@
|
||||
<p class="errormessagelarge">{{ errorMessage }}</p>
|
||||
</rule-modal-middle>
|
||||
<rule-modal-footer>
|
||||
<b-button v-b-tooltip.hover.focus :title="titleCancel" @click="cancel" class="creator-cancel-btn" tabindex="-1">
|
||||
<b-button v-b-tooltip.hover :title="titleCancel" @click="cancel" class="creator-cancel-btn" tabindex="-1">
|
||||
{{ l("Close") }}
|
||||
</b-button>
|
||||
<b-button v-b-tooltip.hover.focus :title="titleErrorOkay" @click="state = 'build'" tabindex="-1">
|
||||
<b-button v-b-tooltip.hover :title="titleErrorOkay" @click="state = 'build'" tabindex="-1">
|
||||
{{ l("Okay") }}
|
||||
</b-button>
|
||||
</rule-modal-footer>
|
||||
@@ -583,7 +583,7 @@ const RegularExpressionInput = {
|
||||
<div>
|
||||
<label for="regular_expression" v-b-tooltip.hover :title="title">{{ label }}</label>
|
||||
<span v-b-popover.html="popoverContent" :title="popoverTitle" class="fa fa-question"></span>
|
||||
<input v-b-tooltip.hover.focus.left :title="title" name="regular_expression" class="rule-regular-expression" type="text" :value="target" @input="$emit('update:target', $event.target.value)" />
|
||||
<input v-b-tooltip.hover.left :title="title" name="regular_expression" class="rule-regular-expression" type="text" :value="target" @input="$emit('update:target', $event.target.value)" />
|
||||
</div>
|
||||
`,
|
||||
props: {
|
||||
@@ -1537,6 +1537,7 @@ export default {
|
||||
subcollection[subElementProp] = childCollectionElements;
|
||||
subcollection.collection_type = collectionTypeAtDepth;
|
||||
elementsAtDepth = childCollectionElements;
|
||||
identifiersAtDepth = identifiersAtDepth[identifier];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,12 +36,11 @@ const applyRegex = function(regex, target, data, replacement, groupCount) {
|
||||
function newRow(row) {
|
||||
const source = row[target];
|
||||
const match = regExp.exec(source);
|
||||
if (!match) {
|
||||
failedCount++;
|
||||
return null;
|
||||
}
|
||||
if (!replacement) {
|
||||
const match = regExp.exec(source);
|
||||
if (!match) {
|
||||
failedCount++;
|
||||
return null;
|
||||
}
|
||||
groupCount = groupCount && parseInt(groupCount);
|
||||
if (groupCount) {
|
||||
if (match.length != groupCount + 1) {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import * as _ from "underscore";
|
||||
import * as d3 from "d3";
|
||||
|
||||
// TODO: This d3 must(?) just be global because various charts use different
|
||||
// versions, and we want to use whichever one that is. I think. I hope.
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@
|
||||
"axios": "^0.17.0",
|
||||
"backbone": "1.3",
|
||||
"bibtex-parse-js": "^0.0.24",
|
||||
"bootstrap": "^4.1.0",
|
||||
"bootstrap": "^4.1.1",
|
||||
"bootstrap-tour": "https://github.com/sorich87/bootstrap-tour.git#6a1028fb562f9aa68c451f0901f8cfeb43cad140",
|
||||
"bootstrap-vue": "^2.0.0-rc.8",
|
||||
"d3": "3",
|
||||
@@ -95,8 +95,8 @@
|
||||
"karma-polyfill": "^1.0.0",
|
||||
"karma-qunit": "^1.2.1",
|
||||
"karma-webpack": "^2.0.6",
|
||||
"node-sass": "^4.8.3",
|
||||
"mocha": "^5.0.5",
|
||||
"node-sass": "^4.8.3",
|
||||
"phantomjs-polyfill": "0.0.2",
|
||||
"phantomjs-prebuilt": "^2.1.7",
|
||||
"prettier": "^1.11.1",
|
||||
|
||||
+5
-1
@@ -1411,10 +1411,14 @@ bootstrap@>=4.0.0-beta:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.0.0.tgz#ceb03842c145fcc1b9b4e15da2a05656ba68469a"
|
||||
|
||||
bootstrap@^4.0.0, bootstrap@^4.1.0:
|
||||
bootstrap@^4.0.0:
|
||||
version "4.1.0"
|
||||
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.1.0.tgz#110b05c31a236d56dbc9adcda6dd16f53738a28a"
|
||||
|
||||
bootstrap@^4.1.1:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.1.1.tgz#3aec85000fa619085da8d2e4983dfd67cf2114cb"
|
||||
|
||||
boxen@^0.5.1:
|
||||
version "0.5.1"
|
||||
resolved "https://registry.yarnpkg.com/boxen/-/boxen-0.5.1.tgz#5b73d8840eb7f3c8a155cbf69ed3ed68d4720014"
|
||||
|
||||
@@ -9,7 +9,6 @@ var Series = window.bundleEntries.chartUtilities.Series;
|
||||
var Datasets = window.bundleEntries.chartUtilities.Datasets;
|
||||
var Jobs = window.bundleEntries.chartUtilities.Jobs;
|
||||
|
||||
window.d3 = d3;
|
||||
var CommonWrapper = Backbone.View.extend({
|
||||
optionsDefault: {
|
||||
margin: {
|
||||
@@ -495,8 +494,7 @@ _.extend(window.bundleEntries || {}, {
|
||||
options.dataset_id = dataset.id;
|
||||
options.dataset_groups = dataset_groups;
|
||||
options.render = function(canvas_id, groups) {
|
||||
/* Where does HeatMap come from? It isn't in any local scope here. */
|
||||
new HeatMap({
|
||||
new CommonWrapper({
|
||||
chart: options.chart,
|
||||
canvas_id: canvas_id,
|
||||
groups: groups
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,7 +1,8 @@
|
||||
import * as d3 from "d3";
|
||||
import * as d3 from 'd3';
|
||||
import jqplot from 'jqplot-exported/jqplot';
|
||||
import { LineRenderer } from 'jqplot-exported/LineRenderer';
|
||||
import { BarRenderer } from 'jqplot-exported/plugins/BarRenderer';
|
||||
import { OHLCRenderer } from 'jqplot-exported/plugins/OHLCRenderer';
|
||||
import { EnhancedLegendRenderer } from 'jqplot-exported/plugins/EnhancedLegendRenderer';
|
||||
|
||||
var Series = window.bundleEntries.chartUtilities.Series;
|
||||
@@ -230,17 +231,17 @@ _.extend(window.bundleEntries || {}, {
|
||||
key : group.get( 'key' )
|
||||
});
|
||||
});
|
||||
var plot = new Plot( {
|
||||
var plot = new CommonWrapper( {
|
||||
process : options.process,
|
||||
chart : options.chart,
|
||||
dataset_id : dataset.id,
|
||||
dataset_groups : dataset_groups,
|
||||
targets : options.targets,
|
||||
makeConfig : function( groups, plot_config ){
|
||||
var boundary = Utilities.getDomains( groups, 'x' );
|
||||
var boundary = Series.getDomains( groups, 'x' );
|
||||
$.extend( true, plot_config, {
|
||||
seriesDefaults: {
|
||||
renderer: $.jqplot.OHLCRenderer,
|
||||
renderer: OHLCRenderer,
|
||||
rendererOptions : {
|
||||
candleStick : true,
|
||||
fillUpBody : true,
|
||||
@@ -264,7 +265,7 @@ _.extend(window.bundleEntries || {}, {
|
||||
for ( var group_index in groups ) {
|
||||
x_labels.push( groups[ group_index ].key );
|
||||
}
|
||||
Utilities.mapCategories ( groups, x_labels );
|
||||
Series.mapCategories ( groups, x_labels );
|
||||
return {
|
||||
array: {
|
||||
x : x_labels
|
||||
@@ -332,11 +333,11 @@ _.extend(window.bundleEntries || {}, {
|
||||
options.dataset_groups = dataset_groups;
|
||||
options.makeConfig = function( groups, plot_config ){
|
||||
$.extend( true, plot_config, {
|
||||
seriesDefaults: { renderer: $.jqplot.BarRenderer },
|
||||
seriesDefaults: { renderer: BarRenderer },
|
||||
axes: { xaxis: { min : -1 }, yaxis: { pad : 1.2 } }
|
||||
});
|
||||
};
|
||||
new Plot( options );
|
||||
new CommonWrapper( options );
|
||||
});
|
||||
},
|
||||
jqplot_line: function(options) {
|
||||
|
||||
@@ -1 +1 @@
|
||||
.jqplot-target{position:relative;color:#666;font-family:Trebuchet MS,Arial,Helvetica,sans-serif;font-size:1em}.jqplot-axis{font-size:.75em}.jqplot-xaxis{margin-top:10px}.jqplot-x2axis{margin-bottom:10px}.jqplot-yaxis{margin-right:10px}.jqplot-y2axis,.jqplot-y3axis,.jqplot-y4axis,.jqplot-y5axis,.jqplot-y6axis,.jqplot-y7axis,.jqplot-y8axis,.jqplot-y9axis,.jqplot-yMidAxis{margin-left:10px;margin-right:10px}.jqplot-axis-tick,.jqplot-x2axis-tick,.jqplot-xaxis-tick,.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick,.jqplot-yaxis-tick,.jqplot-yMidAxis-tick{position:absolute;white-space:pre}.jqplot-xaxis-tick{top:0;left:15px;vertical-align:top}.jqplot-x2axis-tick{bottom:0;left:15px;vertical-align:bottom}.jqplot-yaxis-tick{right:0;top:15px;text-align:right}.jqplot-yaxis-tick.jqplot-breakTick{right:-20px;margin-right:0;padding:1px 5px;z-index:1;font-size:1.5em}.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick{left:0;top:15px;text-align:left}.jqplot-yMidAxis-tick{text-align:center;white-space:nowrap}.jqplot-xaxis-label{margin-top:10px;font-size:11pt;position:absolute}.jqplot-x2axis-label{margin-bottom:10px;font-size:11pt;position:absolute}.jqplot-yaxis-label{margin-right:10px}.jqplot-yaxis-label,.jqplot-yMidAxis-label{font-size:11pt;position:absolute}.jqplot-y2axis-label,.jqplot-y3axis-label,.jqplot-y4axis-label,.jqplot-y5axis-label,.jqplot-y6axis-label,.jqplot-y7axis-label,.jqplot-y8axis-label,.jqplot-y9axis-label{font-size:11pt;margin-left:10px;position:absolute}.jqplot-meterGauge-tick{font-size:.75em;color:#999}.jqplot-meterGauge-label{font-size:1em;color:#999}table.jqplot-table-legend{margin:12px}table.jqplot-cursor-legend,table.jqplot-table-legend{background-color:hsla(0,0%,100%,.6);border:1px solid #ccc;position:absolute;font-size:.75em}td.jqplot-table-legend{vertical-align:middle}td.jqplot-seriesToggle:active,td.jqplot-seriesToggle:hover{cursor:pointer}.jqplot-table-legend .jqplot-series-hidden{text-decoration:line-through}div.jqplot-table-legend-swatch-outline{border:1px solid #ccc;padding:1px}div.jqplot-table-legend-swatch{width:0;height:0;border-top-width:5px;border-bottom-width:5px;border-left-width:6px;border-right-width:6px;border:solid}.jqplot-title{top:0;left:0;padding-bottom:.5em;font-size:1.2em}table.jqplot-cursor-tooltip{border:1px solid #ccc;font-size:.75em}.jqplot-canvasOverlay-tooltip,.jqplot-cursor-tooltip,.jqplot-highlighter-tooltip{border:1px solid #ccc;font-size:.75em;white-space:nowrap;background:hsla(0,0%,82%,.5);padding:1px}.jqplot-point-label{font-size:.75em;z-index:1}td.jqplot-cursor-legend-swatch{vertical-align:middle;text-align:center}div.jqplot-cursor-legend-swatch{width:1.2em;height:.7em}.jqplot-error{text-align:center}.jqplot-error-message{position:relative;top:46%;display:inline-block}div.jqplot-bubble-label{font-size:.8em;padding-left:2px;padding-right:2px;color:#333}div.jqplot-bubble-label.jqplot-bubble-label-highlight{background:hsla(0,0%,90%,.7)}div.jqplot-noData-container{text-align:center;background-color:hsla(0,0%,96%,.3)}
|
||||
.jqplot-target{position:relative;color:#666;font-family:Trebuchet MS,Arial,Helvetica,sans-serif;font-size:1em}.jqplot-axis{font-size:.75em}.jqplot-xaxis{margin-top:10px}.jqplot-x2axis{margin-bottom:10px}.jqplot-yaxis{margin-right:10px}.jqplot-y2axis,.jqplot-y3axis,.jqplot-y4axis,.jqplot-y5axis,.jqplot-y6axis,.jqplot-y7axis,.jqplot-y8axis,.jqplot-y9axis,.jqplot-yMidAxis{margin-left:10px;margin-right:10px}.jqplot-axis-tick,.jqplot-x2axis-tick,.jqplot-xaxis-tick,.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick,.jqplot-yaxis-tick,.jqplot-yMidAxis-tick{position:absolute;white-space:pre}.jqplot-xaxis-tick{top:0;left:15px;vertical-align:top}.jqplot-x2axis-tick{bottom:0;left:15px;vertical-align:bottom}.jqplot-yaxis-tick{right:0;top:15px;text-align:right}.jqplot-yaxis-tick.jqplot-breakTick{right:-20px;margin-right:0;padding:1px 5px;z-index:2;font-size:1.5em}.jqplot-y2axis-tick,.jqplot-y3axis-tick,.jqplot-y4axis-tick,.jqplot-y5axis-tick,.jqplot-y6axis-tick,.jqplot-y7axis-tick,.jqplot-y8axis-tick,.jqplot-y9axis-tick{left:0;top:15px;text-align:left}.jqplot-yMidAxis-tick{text-align:center;white-space:nowrap}.jqplot-xaxis-label{margin-top:10px;font-size:11pt;position:absolute}.jqplot-x2axis-label{margin-bottom:10px;font-size:11pt;position:absolute}.jqplot-yaxis-label{margin-right:10px}.jqplot-yaxis-label,.jqplot-yMidAxis-label{font-size:11pt;position:absolute}.jqplot-y2axis-label,.jqplot-y3axis-label,.jqplot-y4axis-label,.jqplot-y5axis-label,.jqplot-y6axis-label,.jqplot-y7axis-label,.jqplot-y8axis-label,.jqplot-y9axis-label{font-size:11pt;margin-left:10px;position:absolute}.jqplot-meterGauge-tick{font-size:.75em;color:#999}.jqplot-meterGauge-label{font-size:1em;color:#999}table.jqplot-table-legend{margin:12px}table.jqplot-cursor-legend,table.jqplot-table-legend{background-color:hsla(0,0%,100%,.6);border:1px solid #ccc;position:absolute;font-size:.75em}td.jqplot-table-legend{vertical-align:middle}td.jqplot-seriesToggle:active,td.jqplot-seriesToggle:hover{cursor:pointer}.jqplot-table-legend .jqplot-series-hidden{text-decoration:line-through}div.jqplot-table-legend-swatch-outline{border:1px solid #ccc;padding:1px}div.jqplot-table-legend-swatch{width:0;height:0;border-top-width:5px;border-bottom-width:5px;border-left-width:6px;border-right-width:6px;border:solid}.jqplot-title{top:0;left:0;padding-bottom:.5em;font-size:1.2em}table.jqplot-cursor-tooltip{border:1px solid #ccc;font-size:.75em}.jqplot-canvasOverlay-tooltip,.jqplot-cursor-tooltip,.jqplot-highlighter-tooltip{border:1px solid #ccc;font-size:.75em;white-space:nowrap;background:hsla(0,0%,82%,.5);padding:1px}.jqplot-point-label{font-size:.75em;z-index:2}td.jqplot-cursor-legend-swatch{vertical-align:middle;text-align:center}div.jqplot-cursor-legend-swatch{width:1.2em;height:.7em}.jqplot-error{text-align:center}.jqplot-error-message{position:relative;top:46%;display:inline-block}div.jqplot-bubble-label{font-size:.8em;padding-left:2px;padding-right:2px;color:#333}div.jqplot-bubble-label.jqplot-bubble-label-highlight{background:hsla(0,0%,90%,.7)}div.jqplot-noData-container{text-align:center;background-color:hsla(0,0%,96%,.3)}
|
||||
File diff suppressed because one or more lines are too long
@@ -13,14 +13,21 @@
|
||||
<confirm>True</confirm>
|
||||
</specs>
|
||||
<groups>
|
||||
<expand macro="groups"/>
|
||||
<y>
|
||||
<input>
|
||||
<label>Provide a label</label>
|
||||
<name>key</name>
|
||||
<type>text</type>
|
||||
<placeholder>Data label</placeholder>
|
||||
<value>Data label</value>
|
||||
</input>
|
||||
<input>
|
||||
<name>y</name>
|
||||
<label>Observations</label>
|
||||
<type>data_column</type>
|
||||
<is_numeric>true</is_numeric>
|
||||
</y>
|
||||
</input>
|
||||
</groups>
|
||||
<settings>
|
||||
<expand macro="settings"/>
|
||||
</settings>
|
||||
</visualization>
|
||||
</visualization>
|
||||
|
||||
+12
-5
@@ -13,14 +13,21 @@
|
||||
<confirm>True</confirm>
|
||||
</specs>
|
||||
<groups>
|
||||
<expand macro="groups"/>
|
||||
<x>
|
||||
<input>
|
||||
<label>Provide a label</label>
|
||||
<name>key</name>
|
||||
<type>text</type>
|
||||
<placeholder>Data label</placeholder>
|
||||
<value>Data label</value>
|
||||
</input>
|
||||
<input>
|
||||
<name>x</name>
|
||||
<label>Observations</label>
|
||||
<type>data_column</type>
|
||||
<is_numeric>true</is_numeric>
|
||||
</x>
|
||||
<is_label>true</is_label>
|
||||
</input>
|
||||
</groups>
|
||||
<settings>
|
||||
<expand macro="settings"/>
|
||||
</settings>
|
||||
</visualization>
|
||||
</visualization>
|
||||
|
||||
@@ -159,7 +159,7 @@ class ErrorReporter(object):
|
||||
job = self.job
|
||||
host = web.url_for('/', qualified=True)
|
||||
history_id_encoded = self.app.security.encode_id(hda.history_id)
|
||||
history_view_link = web.url_for(controller="history", action="view", id=history_id_encoded, qualified=True)
|
||||
history_view_link = web.url_for("/histories/view", id=history_id_encoded, qualified=True)
|
||||
hda_id_encoded = self.app.security.encode_id(hda.id)
|
||||
hda_show_params_link = web.url_for(controller="dataset", action="show_params", dataset_id=hda_id_encoded, qualified=True)
|
||||
# Build the email message
|
||||
|
||||
+1
-1
@@ -257,7 +257,7 @@ exists() {
|
||||
type "$1" >/dev/null 2>/dev/null
|
||||
}
|
||||
|
||||
DOCKER_DEFAULT_IMAGE='galaxy/testing-base:18.01.4'
|
||||
DOCKER_DEFAULT_IMAGE='galaxy/testing-base:18.05.3'
|
||||
|
||||
test_script="./scripts/functional_tests.py"
|
||||
report_file="run_functional_tests.html"
|
||||
|
||||
+30
-15
@@ -1,6 +1,6 @@
|
||||
@charset "UTF-8";
|
||||
/*!
|
||||
* Bootstrap v4.1.0 (https://getbootstrap.com/)
|
||||
* Bootstrap v4.1.1 (https://getbootstrap.com/)
|
||||
* Copyright 2011-2018 The Bootstrap Authors
|
||||
* Copyright 2011-2018 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
@@ -51,7 +51,7 @@ html {
|
||||
@-ms-viewport {
|
||||
width: device-width; }
|
||||
|
||||
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
|
||||
display: block; }
|
||||
|
||||
body {
|
||||
@@ -159,7 +159,7 @@ pre,
|
||||
code,
|
||||
kbd,
|
||||
samp {
|
||||
font-family: monospace, monospace;
|
||||
font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
|
||||
font-size: 1em; }
|
||||
|
||||
pre {
|
||||
@@ -414,12 +414,6 @@ mark,
|
||||
font-size: 90%;
|
||||
color: #868e96; }
|
||||
|
||||
code,
|
||||
kbd,
|
||||
pre,
|
||||
samp {
|
||||
font-family: Monaco, Menlo, Consolas, "Courier New", monospace; }
|
||||
|
||||
code {
|
||||
font-size: 87.5%;
|
||||
color: #e83e8c;
|
||||
@@ -1504,6 +1498,11 @@ select.form-control-lg:not([size]):not([multiple]), .input-group-lg > select.for
|
||||
.custom-select.is-valid ~ .valid-tooltip {
|
||||
display: block; }
|
||||
|
||||
.was-validated .form-control-file:valid ~ .valid-feedback,
|
||||
.was-validated .form-control-file:valid ~ .valid-tooltip, .form-control-file.is-valid ~ .valid-feedback,
|
||||
.form-control-file.is-valid ~ .valid-tooltip {
|
||||
display: block; }
|
||||
|
||||
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
|
||||
color: #25cf25; }
|
||||
|
||||
@@ -1581,6 +1580,11 @@ select.form-control-lg:not([size]):not([multiple]), .input-group-lg > select.for
|
||||
.custom-select.is-invalid ~ .invalid-tooltip {
|
||||
display: block; }
|
||||
|
||||
.was-validated .form-control-file:invalid ~ .invalid-feedback,
|
||||
.was-validated .form-control-file:invalid ~ .invalid-tooltip, .form-control-file.is-invalid ~ .invalid-feedback,
|
||||
.form-control-file.is-invalid ~ .invalid-tooltip {
|
||||
display: block; }
|
||||
|
||||
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
|
||||
color: #ef5f5b; }
|
||||
|
||||
@@ -2642,8 +2646,7 @@ button,
|
||||
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
|
||||
border-top-right-radius: 0;
|
||||
border-bottom-right-radius: 0; }
|
||||
.input-group > .custom-file:not(:first-child) .custom-file-label,
|
||||
.input-group > .custom-file:not(:first-child) .custom-file-label::after {
|
||||
.input-group > .custom-file:not(:first-child) .custom-file-label {
|
||||
border-top-left-radius: 0;
|
||||
border-bottom-left-radius: 0; }
|
||||
|
||||
@@ -2826,11 +2829,12 @@ button:not(:first-child),
|
||||
background-color: #e9ecef; }
|
||||
|
||||
.custom-control-label {
|
||||
position: relative;
|
||||
margin-bottom: 0; }
|
||||
.custom-control-label::before {
|
||||
position: absolute;
|
||||
top: 0.25rem;
|
||||
left: 0;
|
||||
left: -1.5rem;
|
||||
display: block;
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
@@ -2841,7 +2845,7 @@ button:not(:first-child),
|
||||
.custom-control-label::after {
|
||||
position: absolute;
|
||||
top: 0.25rem;
|
||||
left: 0;
|
||||
left: -1.5rem;
|
||||
display: block;
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
@@ -2967,7 +2971,7 @@ button:not(:first-child),
|
||||
bottom: 0;
|
||||
z-index: 3;
|
||||
display: block;
|
||||
height: calc(calc(1.875rem + 2px) - 1px * 2);
|
||||
height: 1.875rem;
|
||||
padding: 0.375rem 0.75rem;
|
||||
line-height: 1.5;
|
||||
color: #495057;
|
||||
@@ -4563,6 +4567,7 @@ button.close {
|
||||
margin-right: 3px;
|
||||
margin-left: 3px;
|
||||
text-indent: -999px;
|
||||
cursor: pointer;
|
||||
background-color: rgba(255, 255, 255, 0.5); }
|
||||
.carousel-indicators li::before {
|
||||
position: absolute;
|
||||
@@ -6642,7 +6647,17 @@ a.text-dark:hover, a.text-dark:focus {
|
||||
background-color: #fff !important; }
|
||||
.table-bordered th,
|
||||
.table-bordered td {
|
||||
border: 1px solid #dee2e6 !important; } }
|
||||
border: 1px solid #dee2e6 !important; }
|
||||
.table-dark {
|
||||
color: inherit; }
|
||||
.table-dark th,
|
||||
.table-dark td,
|
||||
.table-dark thead th,
|
||||
.table-dark tbody + tbody {
|
||||
border-color: #bfbfbf; }
|
||||
.table .thead-dark th, .ui-table-striped .thead-dark th {
|
||||
color: inherit;
|
||||
border-color: #bfbfbf; } }
|
||||
|
||||
/*!
|
||||
* Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
|
||||
|
||||
@@ -149,7 +149,7 @@
|
||||
%if history.slug and history.user.username:
|
||||
<% return h.url_for( controller='/history', action='display_by_username_and_slug', username=history.user.username, slug=history.slug, qualified=qualify ) %>
|
||||
%else:
|
||||
<% return h.url_for( controller='/history', action='view', id=trans.security.encode_id( history.id ), qualified=qualify, use_panels=context.get('use_panels', True) ) %>
|
||||
<% return h.url_for("/histories/view", id=trans.security.encode_id( history.id ), qualified=qualify) %>
|
||||
%endif
|
||||
</%def>
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
FROM ubuntu:16.04
|
||||
MAINTAINER John Chilton <jmchilton@gmail.com>
|
||||
|
||||
ARG CHROME_VERSION="google-chrome-stable"
|
||||
ARG CHROME_DRIVER_VERSION="2.35"
|
||||
ARG CHROME_VERSION="google-chrome-beta"
|
||||
ARG CHROME_DRIVER_VERSION="2.38"
|
||||
|
||||
# TODO: merge with first ENV statement.
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
@@ -30,10 +30,10 @@ RUN apt-get update -y && apt-get install -y software-properties-common apt-trans
|
||||
apt-get update -y && \
|
||||
apt-get install -y libpq-dev postgresql postgresql-client \
|
||||
ansible wget mysql-server="${MYSQL_MAJOR}"* libmysqlclient-dev="${MYSQL_MAJOR}"* \
|
||||
slurm-llnl libmunge-dev slurm-drmaa-dev ant atop axel bioperl cmake curl \
|
||||
g++ gcc gfortran git-core htop iftop iotop ipython libffi-dev liblapack-dev \
|
||||
slurm-llnl libmunge-dev slurm-drmaa-dev ant cmake curl \
|
||||
g++ gcc gfortran git-core libffi-dev liblapack-dev \
|
||||
libncurses5-dev libopenblas-dev libpam0g-dev libpq-dev libsparsehash-dev make \
|
||||
mercurial nginx-extras nmon patch postgresql postgresql \
|
||||
mercurial nginx-extras patch postgresql postgresql \
|
||||
postgresql-client python-boto python-dev \
|
||||
python-prettytable python-psycopg2 python-virtualenv python-pip \
|
||||
rsync slurm-drmaa-dev swig sysstat unzip \
|
||||
|
||||
@@ -19,7 +19,8 @@ galaxy_config_file: "{{ galaxy_server_dir }}/config/galaxy.ini"
|
||||
configure_docker: no
|
||||
postgresql_bin_dir: /usr/lib/postgresql/9.5/bin
|
||||
galaxy_manage_database: no
|
||||
|
||||
# avoid some packages unneeded packages install by ansible-galaxy-os
|
||||
install_maintainance_packages: false
|
||||
galaxy_user_name: "root"
|
||||
galaxy_extras_install_packages: true
|
||||
galaxy_job_conf_path: "/etc/galaxy/job_conf.xml"
|
||||
|
||||
@@ -3,20 +3,8 @@ set -e
|
||||
|
||||
if [ ! -z "$USE_SELENIUM" ];
|
||||
then
|
||||
sudo -E -u seluser /opt/bin/entry_point.sh &
|
||||
# TODO:...
|
||||
while ! curl -s "http://localhost:4444";
|
||||
do
|
||||
printf "."
|
||||
sleep 4;
|
||||
done;
|
||||
GALAXY_TEST_SELENIUM_REMOTE=1
|
||||
GALAXY_TEST_SELENIUM_REMOTE_HOST=localhost
|
||||
GALAXY_TEST_SELENIUM_REMOTE_PORT=4444
|
||||
|
||||
export GALAXY_TEST_SELENIUM_REMOTE
|
||||
export GALAXY_TEST_SELENIUM_REMOTE_HOST
|
||||
export GALAXY_TEST_SELENIUM_REMOTE_PORT
|
||||
# Start Selenium.
|
||||
sudo -H -E -u seluser /opt/bin/entry_point.sh &
|
||||
fi
|
||||
|
||||
echo "Deleting galaxy user - it may not exist and this is fine."
|
||||
@@ -75,6 +63,22 @@ sudo -E -u "#${GALAXY_TEST_UID}" GALAXY_CONFIG_OVERRIDE_DATABASE_CONNECTION="$GA
|
||||
echo "Upgrading tool shed database... $TOOL_SHED_CONFIG_OVERRIDE_DATABASE_CONNECTION"
|
||||
sudo -E -u "#${GALAXY_TEST_UID}" TOOL_SHED_CONFIG_OVERRIDE_DATABASE_CONNECTION="$TOOL_SHED_TEST_DBURI" sh manage_db.sh upgrade tool_shed
|
||||
|
||||
# Ensure Selenium is running before starting tests.
|
||||
if [ ! -z "$USE_SELENIUM" ];
|
||||
then
|
||||
while ! curl -s "http://localhost:4444";
|
||||
do
|
||||
printf "."
|
||||
sleep 4;
|
||||
done;
|
||||
GALAXY_TEST_SELENIUM_REMOTE=1
|
||||
GALAXY_TEST_SELENIUM_REMOTE_HOST=localhost
|
||||
GALAXY_TEST_SELENIUM_REMOTE_PORT=4444
|
||||
|
||||
export GALAXY_TEST_SELENIUM_REMOTE
|
||||
export GALAXY_TEST_SELENIUM_REMOTE_HOST
|
||||
export GALAXY_TEST_SELENIUM_REMOTE_PORT
|
||||
fi
|
||||
|
||||
if [ -z "$GALAXY_NO_TESTS" ];
|
||||
then
|
||||
|
||||
Reference in New Issue
Block a user