Remove tool migrations api end points

This commit is contained in:
Sergey Golitsynskiy
2022-01-13 13:31:22 -05:00
parent e3770e8bf9
commit e496cd0ac2
3 changed files with 0 additions and 155 deletions
@@ -890,33 +890,6 @@ class AdminGalaxy(controller.JSAppLauncher):
repo_name_dependency_tups.append((repository_name, tool_dependencies))
return repo_name_dependency_tups
@web.expose
@web.require_admin
def review_tool_migration_stages(self, trans, **kwd):
message = escape(util.restore_text(kwd.get('message', '')))
status = util.restore_text(kwd.get('status', 'done'))
migration_stages_dict = {}
# FIXME: this isn't valid in an installed context
migration_scripts_dir = os.path.abspath(os.path.join(trans.app.config.root, 'lib', 'galaxy', 'tool_shed', 'galaxy_install', 'migrate', 'versions'))
modules = os.listdir(migration_scripts_dir)
modules.sort()
modules.reverse()
for item in modules:
if not item.endswith('_tools.py') or item.startswith('0001_tools'):
continue
module = item.replace('.py', '')
migration_stage = int(module.replace('_tools', ''))
repo_name_dependency_tups = self.check_for_tool_dependencies(trans, migration_stage)
open_file_obj, file_name, description = imp.find_module(module, [migration_scripts_dir])
imported_module = imp.load_module('upgrade', open_file_obj, file_name, description)
migration_info = imported_module.__doc__
open_file_obj.close()
migration_stages_dict[migration_stage] = (migration_info, repo_name_dependency_tups)
return trans.fill_template('admin/review_tool_migration_stages.mako',
migration_stages_dict=migration_stages_dict,
message=message,
status=status)
@web.legacy_expose_api
@web.require_admin
def tool_versions_list(self, trans, **kwd):
-5
View File
@@ -1173,11 +1173,6 @@ class ShedTwillTestCase(DrivenFunctionalTestCase):
self.visit_url('/repository/display_tool', params=params)
self.check_for_strings(strings_displayed, strings_not_displayed)
def load_galaxy_tool_migrations_page(self, strings_displayed=None, strings_not_displayed=None):
url = '/admin/review_tool_migration_stages'
self.visit_galaxy_url(url)
self.check_for_strings(strings_displayed, strings_not_displayed)
def load_invalid_tool_page(self, repository, tool_xml, changeset_revision, strings_displayed=None, strings_not_displayed=None):
params = {
'repository_id': self.security.encode_id(repository.id),
@@ -1,123 +0,0 @@
<%inherit file="/base.mako"/>
<%namespace file="/message.mako" import="render_msg" />
%if message:
${render_msg( message, status )}
%endif
<%
from markupsafe import escape
%>
<div class="card">
<div class="card-header">Tool migrations that can be performed on this Galaxy instance</div>
<div class="card-body">
<div class="form-row">
<p>
The list of tool migration stages below, displayed most recent to oldest, provides information about the repositories in the
main Galaxy tool shed that will be cloned at each stage if you run the shell command for that stage. This enables you to execute
the migration process for any stage at any time.
</p>
<p>
Keep in mind that tools included in a repository that you want to be displayed in the Galaxy tool panel when the repository is
installed must be defined in the <b>tool_conf.xml</b> (or equivalent) config file prior to execution of the migration process for a
stage. Executing a migration process multiple times will have no affect unless the repositories associated with that stage have been
uninstalled prior to the execution of the migration process.
</p>
<p>
When you initiate a migration process, the associated repositories will be cloned from the Galaxy tool shed at
<a href="http://toolshed.g2.bx.psu.edu" target="_blank">http://toolshed.g2.bx.psu.edu</a>. The location in which the tool repositories
will be installed is the value of the 'tool_path' attribute in the <tool> tag of the file named ./migrated_tool_conf.xml
(i.e., <b>&lt;toolbox tool_path="../shed_tools"&gt;</b>). The default location setting is <b>'../shed_tools'</b>, which may be problematic
for some cluster environments, so make sure to change it before you execute the installation process if appropriate. The configured location
must be outside of the Galaxy installation directory or it must be in a sub-directory protected by a properly configured <b>.hgignore</b>
file if the directory is within the Galaxy installation directory hierarchy. This is because tool shed repositories will be installed using
mercurial's clone feature, which creates .hg directories and associated mercurial repository files. Not having <b>.hgignore</b> properly
configured could result in undesired behavior when modifying or updating your local Galaxy instance or the tool shed repositories if they are
in directories that pose conflicts. See mercurial's .hgignore documentation at
<a href="http://mercurial.selenic.com/wiki/.hgignore" target="_blank">http://mercurial.selenic.com/wiki/.hgignore</a> for details.
</p>
</div>
<table class="grid">
<% from tool_shed.util.basic_util import to_html_string %>
%for stage in migration_stages_dict.keys():
<%
migration_command = 'sh ./scripts/migrate_tools/%04d_tools.sh' % stage
install_dependencies = '%s install_dependencies' % migration_command
migration_tup = migration_stages_dict[ stage ]
migration_info, repo_name_dependency_tups = migration_tup
repository_names = []
for repo_name_dependency_tup in repo_name_dependency_tups:
repository_name, tool_dependencies = repo_name_dependency_tup
if repository_name not in repository_names:
repository_names.append( repository_name )
if repository_names:
repository_names.sort()
repository_names = ', '.join( repository_names )
%>
<tr><td bgcolor="#D8D8D8"><b>Tool migration stage ${stage} - repositories: ${repository_names|h}</b></td></tr>
<tr>
<td bgcolor="#FFFFCC">
<div class="form-row">
<p>${to_html_string(migration_info)} <b>Run commands from the Galaxy installation directory!</b></p>
<p>
%if tool_dependencies:
This migration stage includes tools that have tool dependencies that can be automatically installed. To install them, run:<br/>
<b>${install_dependencies|h}</b><br/><br/>
To skip tool dependency installation run:<br/>
<b>${migration_command|h}</b>
%else:
<b>${migration_command|h}</b>
%endif
</p>
</div>
</td>
</tr>
%for repo_name_dependency_tup in repo_name_dependency_tups:
<% repository_name, tool_dependencies = repo_name_dependency_tup %>
<tr>
<td bgcolor="#DADFEF">
<div class="form-row">
<b>Repository:</b> ${repository_name|h}
</div>
</td>
</tr>
%if tool_dependencies:
<tr>
<td>
<div class="form-row">
<b>Tool dependencies</b>
</div>
</td>
</tr>
%for tool_dependencies_tup in tool_dependencies:
<%
tool_dependency_name = escape( tool_dependencies_tup[0] )
tool_dependency_version = escape( tool_dependencies_tup[1] )
tool_dependency_type = escape( tool_dependencies_tup[2] )
installation_requirements = escape( tool_dependencies_tup[3] ).replace( '\n', '<br/>' )
%>
<tr>
<td>
<div class="form-row">
<b>Name:</b> ${tool_dependency_name} <b>Version:</b> ${tool_dependency_version} <b>Type:</b> ${tool_dependency_type}
</div>
<div class="form-row">
<b>Requirements and installation information:</b><br/>
${installation_requirements}
</div>
</td>
</tr>
%endfor
%else:
<tr>
<td>
<div class="form-row">
No tool dependencies have been defined for this repository.
</div>
</td>
</tr>
%endif
%endfor
%endfor
</table>
</div>
</div>