Warning

This document is for an in-development version of Galaxy. You can alternatively view this page in the latest release if it exists or view the top of the latest release's documentation.

tool_shed.webapp.model package

class tool_shed.webapp.model.Base(**kwargs: Any)[source]

Bases: object

registry = <sqlalchemy.orm.decl_api.registry object>
metadata = MetaData()
__init__(**kwargs: Any) → None

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

table: Table
class tool_shed.webapp.model.APIKeys(**kwargs)[source]

Bases: Base

id: Mapped[int]
create_time: Mapped[datetime | None]
user_id: Mapped[int | None]
key: Mapped[str | None]
user: Mapped[User | None]
deleted: Mapped[bool | None]
__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

class tool_shed.webapp.model.User(email=None, password=None, username=None)[source]

Bases: Base, Dictifiable

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
active_repositories: Mapped[list[Repository]]
galaxy_sessions: Mapped[list[GalaxySession]]
api_keys: Mapped[list[APIKeys]]
reset_tokens: Mapped[list[PasswordResetToken]]
groups: Mapped[list[UserGroupAssociation]]
dict_collection_visible_keys = ['id', 'username']
dict_element_visible_keys = ['id', 'username']
bootstrap_admin_user = False
roles: Mapped[list[UserRoleAssociation]]
non_private_roles: Mapped[list[UserRoleAssociation]]
__init__(email=None, password=None, username=None)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

email: Mapped[str]
password: Mapped[str]
username: Mapped[str | None]
external: Mapped[bool | None]
deleted: Mapped[bool | None]
purged: Mapped[bool | None]
new_repo_alert: Mapped[bool | None]
property current_galaxy_session
all_roles()[source]
check_password(cleartext)[source]

Check if ‘cleartext’ matches ‘self.password’ when hashed.

get_disk_usage(nice_size=False)[source]
property nice_total_disk_usage
set_disk_usage(bytes)[source]
property total_disk_usage
set_password_cleartext(cleartext: str) → None[source]
set_random_password(length=16)[source]

Sets user password to a random string of the given length. :return: void

class tool_shed.webapp.model.PasswordResetToken(user, token=None)[source]

Bases: Base

user_id: Mapped[int | None]
__init__(user, token=None)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

token: Mapped[str]
user: Mapped[User | None]
expiration_time: Mapped[datetime | None]
class tool_shed.webapp.model.Group(name=None)[source]

Bases: Base, Dictifiable

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
roles: Mapped[list[GroupRoleAssociation]]
users: Mapped[list[UserGroupAssociation]]
dict_collection_visible_keys = ['id', 'name']
dict_element_visible_keys = ['id', 'name']
__init__(name=None)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

name: Mapped[str | None]
deleted: Mapped[bool | None]
class tool_shed.webapp.model.Role(name=None, description=None, type='system', deleted=False)[source]

Bases: Base, Dictifiable

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
repositories: Mapped[list[RepositoryRoleAssociation]]
groups: Mapped[list[GroupRoleAssociation]]
users: Mapped[list[UserRoleAssociation]]
dict_collection_visible_keys = ['id', 'name']
dict_element_visible_keys = ['id', 'name', 'description', 'type']
private_id = None
types = <galaxy.util.bunch.Bunch object>
__init__(name=None, description=None, type='system', deleted=False)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

name: Mapped[str | None]
description: Mapped[str | None]
type: Mapped[str | None]
deleted: Mapped[bool | None]
property is_repository_admin_role
class tool_shed.webapp.model.UserGroupAssociation(user, group)[source]

Bases: Base

id: Mapped[int]
user_id: Mapped[int | None]
group_id: Mapped[int | None]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
__init__(user, group)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

user: Mapped[User | None]
group: Mapped[Group | None]
class tool_shed.webapp.model.UserRoleAssociation(user, role)[source]

Bases: Base

id: Mapped[int]
user_id: Mapped[int | None]
role_id: Mapped[int | None]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
__init__(user, role)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

user: Mapped[User | None]
role: Mapped[Role | None]
class tool_shed.webapp.model.GroupRoleAssociation(group, role)[source]

Bases: Base

id: Mapped[int]
group_id: Mapped[int | None]
role_id: Mapped[int | None]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
__init__(group, role)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

group: Mapped[Group | None]
role: Mapped[Role | None]
class tool_shed.webapp.model.RepositoryRoleAssociation(repository, role)[source]

Bases: Base

id: Mapped[int]
repository_id: Mapped[int | None]
role_id: Mapped[int | None]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
__init__(repository, role)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

repository: Mapped[Repository | None]
role: Mapped[Role | None]
class tool_shed.webapp.model.GalaxySession(is_valid=False, **kwd)[source]

Bases: Base

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
user_id: Mapped[int | None]
remote_host: Mapped[str | None]
remote_addr: Mapped[str | None]
referer: Mapped[str | None]
session_key: Mapped[str | None]
prev_session_id: Mapped[int | None]
user: Mapped[User | None]
__init__(is_valid=False, **kwd)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

is_valid: Mapped[bool | None]
last_action: Mapped[datetime | None]
class tool_shed.webapp.model.Repository(private=False, times_downloaded=0, deprecated=False, user=None, **kwd)[source]

Bases: Base, Dictifiable

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
type: Mapped[str | None]
remote_repository_url: Mapped[str | None]
homepage_url: Mapped[str | None]
description: Mapped[str | None]
long_description: Mapped[str | None]
user_id: Mapped[int | None]
deleted: Mapped[bool | None]
email_alerts: Mapped[bytes | None]
categories: Mapped[list[RepositoryCategoryAssociation]]
ratings: Mapped[list[RepositoryRatingAssociation]]
downloadable_revisions: Mapped[list[RepositoryMetadata]]
metadata_revisions: Mapped[list[RepositoryMetadata]]
roles: Mapped[list[RepositoryRoleAssociation]]
dict_collection_visible_keys = ['id', 'name', 'type', 'remote_repository_url', 'homepage_url', 'description', 'user_id', 'private', 'deleted', 'times_downloaded', 'deprecated', 'create_time', 'update_time']
dict_element_visible_keys = ['id', 'name', 'type', 'remote_repository_url', 'homepage_url', 'description', 'long_description', 'user_id', 'private', 'deleted', 'times_downloaded', 'deprecated', 'create_time', 'update_time']
file_states = <galaxy.util.bunch.Bunch object>
__init__(private=False, times_downloaded=0, deprecated=False, user=None, **kwd)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

private: Mapped[bool | None]
times_downloaded: Mapped[int | None]
deprecated: Mapped[bool | None]
name: Mapped[str | None]
user: Mapped[User | None]
last_updated_time
property hg_repo: IRepo
property admin_role
allow_push()[source]
can_change_type()[source]
can_change_type_to(app, new_type_label)[source]
get_changesets_for_setting_metadata(app)[source]
get_repository_dependencies(app, changeset, toolshed_url, trans=None)[source]
get_type_class(app)[source]
get_tool_dependencies(app: ToolShedApp, changeset_revision: str) → dict[str, Any][source]
installable_revisions(app: ToolShedApp, sort_revisions: bool = True)[source]
is_new()[source]
repo_path(app: ToolShedApp | None = None) → str[source]
hg_repository_path(repositories_directory: str) → str[source]
ensure_hg_repository_path(repositories_directory: str) → str[source]
revision()[source]
set_allow_push(usernames, remove_auth='')[source]
tip() → str[source]
to_dict(view: str = 'collection', value_mapper=None) → dict[str, Any][source]

Return item dictionary.

class tool_shed.webapp.model.ItemRatingAssociation(id=None, user=None, item=None, rating=0, comment='')[source]

Bases: object

__init__(id=None, user=None, item=None, rating=0, comment='')[source]
set_item(item)[source]

Set association’s item.

class tool_shed.webapp.model.RepositoryRatingAssociation(**kwargs)[source]

Bases: Base, ItemRatingAssociation

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
repository_id: Mapped[int | None]
user_id: Mapped[int | None]
rating: Mapped[int | None]
comment: Mapped[str | None]
repository: Mapped[Repository | None]
user: Mapped[User | None]
set_item(repository)[source]

Set association’s item.

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

class tool_shed.webapp.model.Category(deleted=False, **kwd)[source]

Bases: Base, Dictifiable

id: Mapped[int]
create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
name: Mapped[str | None]
description: Mapped[str | None]
repositories: Mapped[list[RepositoryCategoryAssociation]]
dict_collection_visible_keys = ['id', 'name', 'description', 'deleted']
dict_element_visible_keys = ['id', 'name', 'description', 'deleted']
active_repository_count(session=None) → int[source]
__init__(deleted=False, **kwd)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

deleted: Mapped[bool | None]
class tool_shed.webapp.model.RepositoryCategoryAssociation(repository=None, category=None)[source]

Bases: Base

id: Mapped[int]
repository_id: Mapped[int | None]
category_id: Mapped[int | None]
__init__(repository=None, category=None)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

repository: Mapped[Repository | None]
category: Mapped[Category | None]
class tool_shed.webapp.model.Tag(**kwargs)[source]

Bases: Base

__init__(**kwargs)

A simple constructor that allows initialization from kwargs.

Sets attributes on the constructed instance using the names and values in kwargs.

Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.

id: Mapped[int]
type: Mapped[int | None]
parent_id: Mapped[int | None]
name: Mapped[str | None]
children: Mapped[list[Tag]]
parent: Mapped[Tag | None]
class tool_shed.webapp.model.RepositoryMetadata(id=None, repository_id=None, numeric_revision=None, changeset_revision=None, metadata=None, tool_versions=None, malicious=False, downloadable=False, missing_test_components=None, tools_functionally_correct=False, test_install_error=False, has_repository_dependencies=False, includes_datatypes=False, includes_tools=False, includes_tool_dependencies=False, includes_workflows=False)[source]

Bases: Dictifiable

create_time: Mapped[datetime | None]
update_time: Mapped[datetime | None]
repository: Mapped[Repository]
table = Table('repository_metadata', MetaData(), Column('id', Integer(), table=<repository_metadata>, primary_key=True, nullable=False), Column('create_time', DateTime(), table=<repository_metadata>, default=CallableColumnDefault(<function now>)), Column('update_time', DateTime(), table=<repository_metadata>, onupdate=CallableColumnDefault(<function now>), default=CallableColumnDefault(<function now>)), Column('repository_id', Integer(), ForeignKey('repository.id'), table=<repository_metadata>), Column('changeset_revision', TrimmedString(length=255), table=<repository_metadata>), Column('numeric_revision', Integer(), table=<repository_metadata>), Column('metadata', MutableJSONType(), table=<repository_metadata>), Column('tool_versions', MutableJSONType(), table=<repository_metadata>), Column('malicious', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), Column('downloadable', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(True)), Column('missing_test_components', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), Column('has_repository_dependencies', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), Column('includes_datatypes', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), Column('includes_tools', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), Column('includes_tool_dependencies', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), Column('includes_workflows', Boolean(), table=<repository_metadata>, default=ScalarElementColumnDefault(False)), schema=None)
dict_collection_visible_keys = ['id', 'repository_id', 'numeric_revision', 'changeset_revision', 'malicious', 'downloadable', 'missing_test_components', 'has_repository_dependencies', 'includes_datatypes', 'includes_tools', 'includes_tool_dependencies', 'includes_tools_for_display_in_tool_panel', 'includes_workflows', 'create_time']
dict_element_visible_keys = ['id', 'repository_id', 'numeric_revision', 'changeset_revision', 'malicious', 'downloadable', 'missing_test_components', 'has_repository_dependencies', 'includes_datatypes', 'includes_tools', 'includes_tool_dependencies', 'includes_tools_for_display_in_tool_panel', 'includes_workflows', 'create_time', 'repository_dependencies']
__init__(id=None, repository_id=None, numeric_revision=None, changeset_revision=None, metadata=None, tool_versions=None, malicious=False, downloadable=False, missing_test_components=None, tools_functionally_correct=False, test_install_error=False, has_repository_dependencies=False, includes_datatypes=False, includes_tools=False, includes_tool_dependencies=False, includes_workflows=False)
id: Mapped[int | None]
repository_id: Mapped[int | None]
numeric_revision: Mapped[int | None]
changeset_revision: Mapped[str | None]
metadata: Mapped[dict[str, Any] | None]
tool_versions: Mapped[Any]
malicious: Mapped[bool | None]
downloadable: Mapped[bool | None]
missing_test_components: Mapped[bool | None]
has_repository_dependencies: Mapped[bool | None]
includes_datatypes: Mapped[bool | None]
includes_tools: Mapped[bool | None]
includes_tool_dependencies: Mapped[bool | None]
includes_workflows: Mapped[bool | None]
property includes_tools_for_display_in_tool_panel
property repository_dependencies
tool_shed.webapp.model.sort_by_attr(seq, attr)[source]

Sort the sequence of objects by object’s attribute Arguments: seq - the list or any sequence (including immutable one) of objects to sort. attr - the name of attribute to sort by

Subpackages

Submodules

tool_shed.webapp.model.mapping module

Details of how the data model objects are mapped onto the relational database are encapsulated here.

class tool_shed.webapp.model.mapping.ToolShedModelMapping(model_modules: list[ModuleType], engine: Engine)[source]

Bases: SharedModelMapping

Role: type[ModelRole]
User: type[ModelUser]
UserRoleAssociation: type[ModelUserRoleAssociation]
security_agent: CommunityRBACAgent
shed_counter: ShedCounter
create_tables: bool
tool_shed.webapp.model.mapping.init(url: str, engine_options: dict[str, Any] | None = None, create_tables: bool = False) → ToolShedModelMapping[source]

Connect mappings to the database