galaxy.tools.toolbox package¶
Subpackages¶
Submodules¶
galaxy.tools.toolbox.base module¶
-
class
galaxy.tools.toolbox.base.
AbstractToolBox
(config_filenames, tool_root_dir, app)[source]¶ Bases:
galaxy.util.dictifiable.Dictifiable
,galaxy.tools.toolbox.integrated_panel.ManagesIntegratedToolPanelMixin
Abstract container for managing a ToolPanel - containing tools and workflows optionally in labelled sections.
-
dynamic_conf_filenames
(include_migrated_tool_conf=False)[source]¶ Return list of dynamic tool configuration filenames (shed_tools). These must be used with various dynamic tool configuration update operations (e.g. with update_shed_config).
-
find_section_id
(tool_panel_section_id)[source]¶ Find the section ID referenced by the key or return ‘’ indicating no such section id.
-
get_loaded_tools_by_lineage
(tool_id)[source]¶ Get all loaded tools associated by lineage to the tool whose id is tool_id.
-
get_tool
(tool_id, tool_version=None, get_all_versions=False, exact=False)[source]¶ Attempt to locate a tool in the tool box. Note that exact only refers to the tool_id, not the tool_version.
-
get_tool_id
(tool_id)[source]¶ Take a tool id - potentially from a different Galaxy instance or that is no longer loaded - and find the closest match to the currently loaded tools (using get_tool for inexact matches which currently returns the oldest tool shed installed tool with the same short id).
-
get_tool_to_dict
(trans, tool)[source]¶ Return tool’s to_dict. Use cache if present, store to cache otherwise. Note: The cached tool’s to_dict is specific to the calls from toolbox.
-
handle_panel_update
(section_dict)[source]¶ Extension-point for Galaxy-app specific reload logic.
This abstract representation of the toolbox shouldn’t have details about interacting with the rest of the Galaxy app or message queues, etc….
-
is_missing_shed_tool
(tool_id)[source]¶ Confirm that the tool ID does reference a shed tool and is not installed.
Load a hidden tool (in this context meaning one that does not appear in the tool panel) and register it in _tools_by_id.
-
load_item
(item, tool_path, panel_dict=None, integrated_panel_dict=None, load_panel_dict=True, guid=None, index=None, internal=False)[source]¶
-
load_tool
(config_file, guid=None, repository_id=None, use_cached=False, **kwds)[source]¶ Load a single tool from the file named by config_file and return an instance of Tool.
-
package_tool
(trans, tool_id)[source]¶ Create a tarball with the tool’s xml, help images, and test data. :param trans: the web transaction :param tool_id: the tool ID from app.toolbox :returns: tuple of tarball filename, success True/False, message/None
-
reload_tool_by_id
(tool_id)[source]¶ Attempt to reload the tool identified by ‘tool_id’, if successful replace the old tool.
-
remove_tool_by_id
(tool_id, remove_from_panel=True)[source]¶ Attempt to remove the tool identified by ‘tool_id’. Ignores tool lineage - so to remove a tool with potentially multiple versions send remove_from_panel=False and handle the logic of promoting the next newest version of the tool into the panel if needed.
-
to_dict
(trans, in_panel=True, **kwds)[source]¶ Create a dictionary representation of the toolbox. Uses primitive cache for toolbox-specific tool ‘to_dict’s.
-
-
class
galaxy.tools.toolbox.base.
BaseGalaxyToolBox
(config_filenames, tool_root_dir, app)[source]¶ Bases:
galaxy.tools.toolbox.base.AbstractToolBox
Extend the AbstractToolBox with more Galaxy tooling-specific functionality. Adds dependencies on dependency resolution and tool loading modules, that an abstract description of panels shouldn’t really depend on.
-
sa_session
¶ Returns a SQLAlchemy session
-
galaxy.tools.toolbox.integrated_panel module¶
galaxy.tools.toolbox.panel module¶
-
class
galaxy.tools.toolbox.panel.
HasPanelItems
[source]¶ Bases:
object
-
class
galaxy.tools.toolbox.panel.
ToolPanelElements
(dict=None)[source]¶ Bases:
galaxy.util.odict.odict
,galaxy.tools.toolbox.panel.HasPanelItems
Represents an ordered dictionary of tool entries - abstraction used both by tool panel itself (normal and integrated) and its sections.
-
class
galaxy.tools.toolbox.panel.
ToolSection
(item=None)[source]¶ Bases:
galaxy.util.dictifiable.Dictifiable
,galaxy.tools.toolbox.panel.HasPanelItems
A group of tools with similar type/purpose that will be displayed as a group in the user interface.
-
dict_collection_visible_keys
= ['id', 'name', 'version']¶
-
-
class
galaxy.tools.toolbox.panel.
ToolSectionLabel
(item)[source]¶ Bases:
galaxy.util.dictifiable.Dictifiable
A label for a set of tools that can be displayed above groups of tools and sections in the user interface
-
dict_collection_visible_keys
= ['id', 'text', 'version']¶
-
galaxy.tools.toolbox.parser module¶
This module is used to parse tool_conf files.
These files define tool lists, sections, labels, etc… the elements of the Galaxy tool panel.
galaxy.tools.toolbox.tags module¶
Handle details of tool tagging - perhaps a deprecated feature.
Bases:
object
Parse out tags and persist them.
Starting to load tool panels, reset all tags.
Bases:
galaxy.tools.toolbox.tags.AbstractToolTagManager
Parse out tags and persist them.
Starting to load tool panels, reset all tags.
Bases:
galaxy.tools.toolbox.tags.AbstractToolTagManager
Parse out tags and persist them.
Starting to load tool panels, reset all tags.
Build a tool tag manager according to app’s configuration and return it.
galaxy.tools.toolbox.watcher module¶
-
class
galaxy.tools.toolbox.watcher.
ToolConfWatcher
(reload_callback, tool_cache=None)[source]¶ Bases:
object
-
class
galaxy.tools.toolbox.watcher.
ToolDataWatcher
(observer_class, tool_data_tables)[source]¶ Bases:
object
Module contents¶
API for this module containing functionality related to the toolbox.
-
class
galaxy.tools.toolbox.
AbstractToolBox
(config_filenames, tool_root_dir, app)[source]¶ Bases:
galaxy.util.dictifiable.Dictifiable
,galaxy.tools.toolbox.integrated_panel.ManagesIntegratedToolPanelMixin
Abstract container for managing a ToolPanel - containing tools and workflows optionally in labelled sections.
-
dynamic_conf_filenames
(include_migrated_tool_conf=False)[source]¶ Return list of dynamic tool configuration filenames (shed_tools). These must be used with various dynamic tool configuration update operations (e.g. with update_shed_config).
-
find_section_id
(tool_panel_section_id)[source]¶ Find the section ID referenced by the key or return ‘’ indicating no such section id.
-
get_loaded_tools_by_lineage
(tool_id)[source]¶ Get all loaded tools associated by lineage to the tool whose id is tool_id.
-
get_tool
(tool_id, tool_version=None, get_all_versions=False, exact=False)[source]¶ Attempt to locate a tool in the tool box. Note that exact only refers to the tool_id, not the tool_version.
-
get_tool_id
(tool_id)[source]¶ Take a tool id - potentially from a different Galaxy instance or that is no longer loaded - and find the closest match to the currently loaded tools (using get_tool for inexact matches which currently returns the oldest tool shed installed tool with the same short id).
-
get_tool_to_dict
(trans, tool)[source]¶ Return tool’s to_dict. Use cache if present, store to cache otherwise. Note: The cached tool’s to_dict is specific to the calls from toolbox.
-
handle_panel_update
(section_dict)[source]¶ Extension-point for Galaxy-app specific reload logic.
This abstract representation of the toolbox shouldn’t have details about interacting with the rest of the Galaxy app or message queues, etc….
-
is_missing_shed_tool
(tool_id)[source]¶ Confirm that the tool ID does reference a shed tool and is not installed.
Load a hidden tool (in this context meaning one that does not appear in the tool panel) and register it in _tools_by_id.
-
load_item
(item, tool_path, panel_dict=None, integrated_panel_dict=None, load_panel_dict=True, guid=None, index=None, internal=False)[source]¶
-
load_tool
(config_file, guid=None, repository_id=None, use_cached=False, **kwds)[source]¶ Load a single tool from the file named by config_file and return an instance of Tool.
-
package_tool
(trans, tool_id)[source]¶ Create a tarball with the tool’s xml, help images, and test data. :param trans: the web transaction :param tool_id: the tool ID from app.toolbox :returns: tuple of tarball filename, success True/False, message/None
-
reload_tool_by_id
(tool_id)[source]¶ Attempt to reload the tool identified by ‘tool_id’, if successful replace the old tool.
-
remove_tool_by_id
(tool_id, remove_from_panel=True)[source]¶ Attempt to remove the tool identified by ‘tool_id’. Ignores tool lineage - so to remove a tool with potentially multiple versions send remove_from_panel=False and handle the logic of promoting the next newest version of the tool into the panel if needed.
-
to_dict
(trans, in_panel=True, **kwds)[source]¶ Create a dictionary representation of the toolbox. Uses primitive cache for toolbox-specific tool ‘to_dict’s.
-
-
class
galaxy.tools.toolbox.
BaseGalaxyToolBox
(config_filenames, tool_root_dir, app)[source]¶ Bases:
galaxy.tools.toolbox.base.AbstractToolBox
Extend the AbstractToolBox with more Galaxy tooling-specific functionality. Adds dependencies on dependency resolution and tool loading modules, that an abstract description of panels shouldn’t really depend on.
-
sa_session
¶ Returns a SQLAlchemy session
-
-
class
galaxy.tools.toolbox.
ToolSection
(item=None)[source]¶ Bases:
galaxy.util.dictifiable.Dictifiable
,galaxy.tools.toolbox.panel.HasPanelItems
A group of tools with similar type/purpose that will be displayed as a group in the user interface.
-
dict_collection_visible_keys
= ['id', 'name', 'version']¶
-
-
class
galaxy.tools.toolbox.
ToolSectionLabel
(item)[source]¶ Bases:
galaxy.util.dictifiable.Dictifiable
A label for a set of tools that can be displayed above groups of tools and sections in the user interface
-
dict_collection_visible_keys
= ['id', 'text', 'version']¶
-