From 3665ef056d377960edd92b558fcf903f9280a204 Mon Sep 17 00:00:00 2001 From: guerler Date: Mon, 17 Dec 2018 14:04:13 -0500 Subject: [PATCH] Add error stack vue component and client side routes --- client/galaxy/scripts/apps/admin.js | 7 +++ .../galaxy/scripts/apps/panels/admin-panel.js | 3 +- .../scripts/components/admin/AdminServices.js | 7 +++ .../scripts/components/admin/ErrorStack.vue | 54 +++++++++++++++++++ lib/galaxy/webapps/galaxy/buildapp.py | 1 + 5 files changed, 71 insertions(+), 1 deletion(-) create mode 100644 client/galaxy/scripts/components/admin/AdminServices.js create mode 100644 client/galaxy/scripts/components/admin/ErrorStack.vue diff --git a/client/galaxy/scripts/apps/admin.js b/client/galaxy/scripts/apps/admin.js index c52f399ba58..caa631c8daf 100644 --- a/client/galaxy/scripts/apps/admin.js +++ b/client/galaxy/scripts/apps/admin.js @@ -14,6 +14,7 @@ import DataTables from "components/admin/DataTables.vue"; import DataTypes from "components/admin/DataTypes.vue"; import DataManagerView from "components/admin/DataManager/DataManagerView.vue"; import DataManagerRouter from "components/admin/DataManager/DataManagerRouter.vue"; +import ErrorStack from "components/admin/ErrorStack.vue"; import Vue from "vue"; import { serverPath } from "utils/serverPath"; @@ -33,6 +34,7 @@ window.app = function app(options, bootstrapped) { "(/)admin(/)users": "show_users", "(/)admin(/)roles": "show_roles", "(/)admin(/)groups": "show_groups", + "(/)admin(/)error_stack": "show_error_stack", "(/)admin(/)tool_versions": "show_tool_versions", "(/)admin(/)quotas": "show_quotas", "(/)admin(/)repositories": "show_repositories", @@ -120,10 +122,15 @@ window.app = function app(options, bootstrapped) { show_data_tables: function() { this._display_vue_helper(DataTables); }, + show_data_types: function() { this._display_vue_helper(DataTypes); }, + show_error_stack: function() { + this._display_vue_helper(ErrorStack); + }, + show_data_manager: function(path) { let vueMount = document.createElement("div"); this.page.display(vueMount); diff --git a/client/galaxy/scripts/apps/panels/admin-panel.js b/client/galaxy/scripts/apps/panels/admin-panel.js index e77995c4e0a..0d6d6929abf 100644 --- a/client/galaxy/scripts/apps/panels/admin-panel.js +++ b/client/galaxy/scripts/apps/panels/admin-panel.js @@ -132,7 +132,8 @@ var AdminPanel = Backbone.View.extend({ }, { title: _l("View error logs"), - url: "admin/tool_errors" + url: "admin/error_stack", + target: "__use_router__" } ] } diff --git a/client/galaxy/scripts/components/admin/AdminServices.js b/client/galaxy/scripts/components/admin/AdminServices.js new file mode 100644 index 00000000000..c70276f7e55 --- /dev/null +++ b/client/galaxy/scripts/components/admin/AdminServices.js @@ -0,0 +1,7 @@ +import { getAppRoot } from "onload/loadConfig"; +import axios from "axios"; + +export function getErrorStack() { + let url = `${getAppRoot()}api/tools/error_stack`; + return axios.get(url); +} diff --git a/client/galaxy/scripts/components/admin/ErrorStack.vue b/client/galaxy/scripts/components/admin/ErrorStack.vue new file mode 100644 index 00000000000..c7d69e804fe --- /dev/null +++ b/client/galaxy/scripts/components/admin/ErrorStack.vue @@ -0,0 +1,54 @@ + + diff --git a/lib/galaxy/webapps/galaxy/buildapp.py b/lib/galaxy/webapps/galaxy/buildapp.py index 47a08c9d31b..7d24c804f1a 100644 --- a/lib/galaxy/webapps/galaxy/buildapp.py +++ b/lib/galaxy/webapps/galaxy/buildapp.py @@ -102,6 +102,7 @@ def app_factory(global_conf, load_app_kwds={}, **kwargs): webapp.add_client_route('/admin/data_tables', 'admin') webapp.add_client_route('/admin/data_types', 'admin') webapp.add_client_route('/admin/data_manager{path_info:.*}', 'admin') + webapp.add_client_route('/admin/error_stack', 'admin') webapp.add_client_route('/admin/users', 'admin') webapp.add_client_route('/admin/roles', 'admin') webapp.add_client_route('/admin/forms', 'admin')