diff --git a/pulsar/client/test/check.py b/pulsar/client/test/check.py index 46692613d2eefac1c5a0befc812c0f7c82696013..b47f4a1adb6c52ed64bdf9b26edfd31600e44f73 100644 --- a/pulsar/client/test/check.py +++ b/pulsar/client/test/check.py @@ -17,8 +17,14 @@ import traceback from collections import namedtuple from io import open -from galaxy.tools.deps.dependencies import DependenciesDescription -from galaxy.tools.deps.requirements import ToolRequirement +try: + # If galaxy-lib or Galaxy 19.05 present. + from galaxy.tools.deps.dependencies import DependenciesDescription + from galaxy.tools.deps.requirements import ToolRequirement +except ImportError: + # If galaxy-tool-util or Galaxy 19.09 present. + from galaxy.tool_util.deps.dependencies import DependenciesDescription + from galaxy.tool_util.deps.requirements import ToolRequirement from six import binary_type from pulsar.client import ( diff --git a/pulsar/core.py b/pulsar/core.py index db9818bf106353e9d778d8bd20382c86dac182ce..ee8f4f7d654572ee63170d11b276b09ba34bc149 100644 --- a/pulsar/core.py +++ b/pulsar/core.py @@ -9,8 +9,18 @@ from pulsar.tools import ToolBox from pulsar.tools.authorization import get_authorizer from pulsar import messaging from galaxy.objectstore import build_object_store_from_config -from galaxy.tools.deps import DependencyManager -from galaxy.jobs.metrics import JobMetrics +try: + # If galaxy-lib or Galaxy <19.05 present. + from galaxy.tools.deps import DependencyManager +except ImportError: + # If galaxy-tool-util or Galaxy >=19.09 present. + from galaxy.tool_util.deps import DependencyManager +try: + # If galaxy-lib or Galaxy <19.05 present. + from galaxy.jobs.metrics import JobMetrics +except ImportError: + # If galaxy-job-metrics or Galaxy >=19.09 present. + from galaxy.job_metrics import JobMetrics from galaxy.util.bunch import Bunch from logging import getLogger diff --git a/pulsar/managers/stateful.py b/pulsar/managers/stateful.py index dcee9c9c353ff20c47cb30c7c523e03f51d4a20d..bff96998c704cb1708c9e014527d11fa9b745ed8 100644 --- a/pulsar/managers/stateful.py +++ b/pulsar/managers/stateful.py @@ -6,7 +6,12 @@ import os import time import threading -from galaxy.tools.deps import dependencies +try: + # If galaxy-lib or Galaxy 19.05 present. + from galaxy.tools.deps.dependencies import DependenciesDescription +except ImportError: + # If galaxy-tool-util or Galaxy 19.09 present. + from galaxy.tool_util.deps.dependencies import DependenciesDescription from pulsar.client.util import filter_destination_params from pulsar.managers import ManagerProxy @@ -109,7 +114,7 @@ class StatefulManagerProxy(ManagerProxy): yield launch_kwds = {} if launch_config.get("dependencies_description"): - dependencies_description = dependencies.DependenciesDescription.from_dict(launch_config["dependencies_description"]) + dependencies_description = DependenciesDescription.from_dict(launch_config["dependencies_description"]) launch_kwds["dependencies_description"] = dependencies_description for kwd in ["submit_params", "setup_params", "env"]: if kwd in launch_config: