diff --git a/girder_worker/girder_plugin/__init__.py b/girder_worker/girder_plugin/__init__.py index 4f6f2802..c1e7dd4c 100644 --- a/girder_worker/girder_plugin/__init__.py +++ b/girder_worker/girder_plugin/__init__.py @@ -27,52 +27,37 @@ import logging from pathlib import Path -import girder # noqa +from girder import events +from girder.constants import AccessType +from girder.plugin import getPlugin, GirderPlugin, registerPluginStaticContent +from girder_jobs.models.job import Job -logger = logging.getLogger(__name__) - -# Detect if girder>=3 is installed by checking an import that was added in 3.0. -_isGirder3 = False -try: - from girder.plugin import getPlugin, GirderPlugin, registerPluginStaticContent - _isGirder3 = True -except ImportError: - logger.info('Girder 2.x is detected skipping incompatible entrypoint definition.') +from .api.worker import Worker +from . import event_handlers +logger = logging.getLogger(__name__) -# If girder>=3 is installed, it is safe to continue defining the plugin class, otherwise -# just define a dummy class to prevent error messages from propagating. -if _isGirder3: - from girder import events - from girder.constants import AccessType - from girder_jobs.models.job import Job - - from .api.worker import Worker - from . import event_handlers - class WorkerPlugin(GirderPlugin): - DISPLAY_NAME = 'Worker' +class WorkerPlugin(GirderPlugin): + DISPLAY_NAME = 'Worker' - def load(self, info): - getPlugin('jobs').load(info) + def load(self, info): + getPlugin('jobs').load(info) - info['apiRoot'].worker = Worker() + info['apiRoot'].worker = Worker() - registerPluginStaticContent( - plugin='worker', - js=['/girder-plugin-worker.umd.cjs'], - css=['/style.css'], - staticDir=Path(__file__).parent / 'web_client' / 'dist', - tree=info['serverRoot'], - ) + registerPluginStaticContent( + plugin='worker', + js=['/girder-plugin-worker.umd.cjs'], + css=['/style.css'], + staticDir=Path(__file__).parent / 'web_client' / 'dist', + tree=info['serverRoot'], + ) - events.bind('jobs.schedule', 'worker', event_handlers.schedule) - events.bind('jobs.status.validate', 'worker', event_handlers.validateJobStatus) - events.bind('jobs.status.validTransitions', 'worker', event_handlers.validTransitions) - events.bind('jobs.cancel', 'worker', event_handlers.cancel) - events.bind('model.job.save.after', 'worker', event_handlers.attachJobInfoSpec) - events.bind('model.job.save', 'worker', event_handlers.attachParentJob) - Job().exposeFields(AccessType.SITE_ADMIN, {'celeryTaskId', 'celeryQueue'}) -else: - class WorkerPlugin: - pass + events.bind('jobs.schedule', 'worker', event_handlers.schedule) + events.bind('jobs.status.validate', 'worker', event_handlers.validateJobStatus) + events.bind('jobs.status.validTransitions', 'worker', event_handlers.validTransitions) + events.bind('jobs.cancel', 'worker', event_handlers.cancel) + events.bind('model.job.save.after', 'worker', event_handlers.attachJobInfoSpec) + events.bind('model.job.save', 'worker', event_handlers.attachParentJob) + Job().exposeFields(AccessType.SITE_ADMIN, {'celeryTaskId', 'celeryQueue'}) diff --git a/girder_worker/girder_plugin/web_client/vite.config.ts b/girder_worker/girder_plugin/web_client/vite.config.ts index ef71afae..4e8f7040 100644 --- a/girder_worker/girder_plugin/web_client/vite.config.ts +++ b/girder_worker/girder_plugin/web_client/vite.config.ts @@ -28,9 +28,5 @@ export default defineConfig({ name: 'GirderPluginWorker', fileName: 'girder-plugin-worker', }, - }, - define: { - __BUILD_TIMESTAMP__: `${+new Date()}`, - 'process.env': {}, // for legacy Vue 2 - }, + } }); diff --git a/requirements-dev.in b/requirements-dev.in index f27839a5..6eed2ec7 100644 --- a/requirements-dev.in +++ b/requirements-dev.in @@ -1,6 +1,6 @@ --e git+https://github.com/girder/girder.git@master#egg=girder --e git+https://github.com/girder/girder.git@master#egg=girder-jobs&subdirectory=plugins/jobs --e git+https://github.com/girder/girder.git@master#egg=pytest-girder&subdirectory=pytest_girder +-e git+https://github.com/girder/girder.git@v4-integration#egg=girder +-e git+https://github.com/girder/girder.git@v4-integration#egg=girder-jobs&subdirectory=plugins/jobs +-e git+https://github.com/girder/girder.git@v4-integration#egg=pytest-girder&subdirectory=pytest_girder coverage coveralls flake8 diff --git a/requirements.txt b/requirements.txt index 26bcce9c..165f6cce 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,14 +4,14 @@ # # pip-compile --output-file=requirements.txt requirements-dev.in requirements.in # --e git+https://github.com/girder/girder.git@master#egg=girder +-e git+https://github.com/girder/girder.git@v4-integration#egg=girder # via # -r requirements-dev.in # girder-jobs # pytest-girder --e git+https://github.com/girder/girder.git@master#egg=girder-jobs&subdirectory=plugins/jobs +-e git+https://github.com/girder/girder.git@v4-integration#egg=girder-jobs&subdirectory=plugins/jobs # via -r requirements-dev.in --e git+https://github.com/girder/girder.git@master#egg=pytest-girder&subdirectory=pytest_girder +-e git+https://github.com/girder/girder.git@v4-integration#egg=pytest-girder&subdirectory=pytest_girder # via -r requirements-dev.in alabaster==0.7.13 # via sphinx diff --git a/setup.py b/setup.py index faf89d88..f09fee33 100644 --- a/setup.py +++ b/setup.py @@ -67,7 +67,7 @@ def run(self, *args, **kwargs): install_reqs = f.readlines() extras_require = {} -extras_require['girder'] = ['girder>=3.0.1', 'girder-jobs>=3.0.1'] +extras_require['girder'] = ['girder>=5', 'girder-jobs>=5'] # perform the install setuptools.setup(