Skip to content

Commit

Permalink
Fixes #15224 - tools token are created with a size of 10 chars when i…
Browse files Browse the repository at this point in the history
…nteractivetools_shorten_url is true
  • Loading branch information
Lain-inrae committed Jan 3, 2023
1 parent 36f0494 commit cdbfe67
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 2 deletions.
1 change: 1 addition & 0 deletions lib/galaxy/managers/interactivetool.py
Original file line number Diff line number Diff line change
Expand Up @@ -163,6 +163,7 @@ def create_entry_points(self, job, tool, entry_points=None, flush=True):
entry_url=entry["url"],
name=entry["name"],
requires_domain=entry["requires_domain"],
short_token=self.app.config.interactivetools_shorten_url,
)
self.sa_session.add(ep)
if flush:
Expand Down
7 changes: 5 additions & 2 deletions lib/galaxy/model/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -2340,12 +2340,15 @@ class InteractiveToolEntryPoint(Base, Dictifiable, RepresentById):
dict_collection_visible_keys = ["id", "name", "active", "created_time", "modified_time"]
dict_element_visible_keys = ["id", "name", "active", "created_time", "modified_time"]

def __init__(self, requires_domain=True, configured=False, deleted=False, **kwd):
def __init__(self, requires_domain=True, configured=False, deleted=False, short_token=False, **kwd):
super().__init__(**kwd)
self.requires_domain = requires_domain
self.configured = configured
self.deleted = deleted
self.token = self.token or uuid4().hex
if short_token:
self.token = (self.token or uuid4().hex)[:10]
else:
self.token = self.token or uuid4().hex
self.info = self.info or {}

@property
Expand Down
8 changes: 8 additions & 0 deletions test/integration/test_interactivetools_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,14 @@ def handle_galaxy_config_kwds(cls, config):
disable_dependency_resolution(config)


class InteractiveToolsShortURLIntegrationTestCase(BaseInteractiveToolsIntegrationTestCase, RunsInterativeToolTests):
@classmethod
def handle_galaxy_config_kwds(cls, config):
super().handle_galaxy_config_kwds(config)
config["interactivetools_shorten_url"] = True
config["job_config_file"] = DOCKERIZED_JOB_CONFIG_FILE


class InteractiveToolsRemoteProxyIntegrationTestCase(BaseInteractiveToolsIntegrationTestCase, RunsInterativeToolTests):
"""
$ cd gx-it-proxy
Expand Down

0 comments on commit cdbfe67

Please sign in to comment.