From ffbfcc68a45fbc9c7a73cf17f7b5a3a0e83453bb Mon Sep 17 00:00:00 2001 From: Nate Coraor Date: Mon, 27 Apr 2015 14:56:30 -0400 Subject: [PATCH] Make the `enable_tool_shed_check` option perform as advertised in the sample config file. Also disables checks at startup. --- lib/galaxy/config.py | 1 + .../update_repository_manager.py | 18 ++++++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/galaxy/config.py b/lib/galaxy/config.py index 34472c7bdaf..a39d9472dd7 100644 --- a/lib/galaxy/config.py +++ b/lib/galaxy/config.py @@ -121,6 +121,7 @@ class Configuration( object ): self.manage_dependency_relationships = string_as_bool( kwargs.get( 'manage_dependency_relationships', False ) ) self.running_functional_tests = string_as_bool( kwargs.get( 'running_functional_tests', False ) ) self.hours_between_check = kwargs.get( 'hours_between_check', 12 ) + self.enable_tool_shed_check = string_as_bool( kwargs.get( 'enable_tool_shed_check', False ) ) if isinstance( self.hours_between_check, basestring ): self.hours_between_check = float( self.hours_between_check ) try: diff --git a/lib/tool_shed/galaxy_install/update_repository_manager.py b/lib/tool_shed/galaxy_install/update_repository_manager.py index 5952eb54882..532dc9aab79 100644 --- a/lib/tool_shed/galaxy_install/update_repository_manager.py +++ b/lib/tool_shed/galaxy_install/update_repository_manager.py @@ -16,12 +16,13 @@ class UpdateRepositoryManager( object ): self.app = app self.context = self.app.install_model.context # Ideally only one Galaxy server process should be able to check for repository updates. - self.running = True - self.sleeper = Sleeper() - self.restarter = threading.Thread( target=self.__restarter ) - self.restarter.daemon = True - self.restarter.start() - self.seconds_to_sleep = int( app.config.hours_between_check * 3600 ) + if self.app.config.enable_tool_shed_check: + self.running = True + self.sleeper = Sleeper() + self.restarter = threading.Thread( target=self.__restarter ) + self.restarter.daemon = True + self.restarter.start() + self.seconds_to_sleep = int( app.config.hours_between_check * 3600 ) def get_update_to_changeset_revision_and_ctx_rev( self, repository ): """Return the changeset revision hash to which the repository can be updated.""" @@ -94,8 +95,9 @@ class UpdateRepositoryManager( object ): log.info( 'Update repository manager restarter shutting down...' ) def shutdown( self ): - self.running = False - self.sleeper.wake() + if self.app.config.enable_tool_shed_check: + self.running = False + self.sleeper.wake() def update_repository_record( self, repository, updated_metadata_dict, updated_changeset_revision, updated_ctx_rev ): """