2 new commits in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/525b1fc16a58/
Changeset: 525b1fc16a58
Branch: release_15.03
User: jmchilton
Date: 2015-02-22 05:32:46+00:00
Summary: Fix for watching tools on some more interesting file systems.
Affected #: 3 files
diff -r 33fd43f7590f17ed611ce07178cae8c2b70525d0 -r
525b1fc16a587e91d60cdc4f9152f8e881b7e7de config/galaxy.ini.sample
--- a/config/galaxy.ini.sample
+++ b/config/galaxy.ini.sample
@@ -176,11 +176,15 @@
# install from in the admin interface (.sample used if default does not exist).
#tool_sheds_config_file = config/tool_sheds_conf.xml
-# Enable monitoring of tools and tool directories listed in any tool config file
-# specified in tool_config_file option. If changes are found, tools are
-# automatically reloaded.
-# Watchdog (
https://pypi.python.org/pypi/watchdog ) must be installed and
-# available to Galaxy to use this option.
+# Set to True to Enable monitoring of tools and tool directories
+# listed in any tool config file specified in tool_config_file option.
+# If changes are found, tools are automatically reloaded. Watchdog (
+#
https://pypi.python.org/pypi/watchdog ) must be installed and
+# available to Galaxy to use this option. Other options include 'auto'
+# which will attempt to watch tools if the watchdog library is available
+# but won't fail to load Galaxy if it is not and 'polling' which will use
+# a less efficient monitoring scheme that may work in wider range of scenarios
+# then the watchdog default montiory.
#watch_tools = False
# Enable automatic polling of relative tool sheds to see if any updates
diff -r 33fd43f7590f17ed611ce07178cae8c2b70525d0 -r
525b1fc16a587e91d60cdc4f9152f8e881b7e7de lib/galaxy/config.py
--- a/lib/galaxy/config.py
+++ b/lib/galaxy/config.py
@@ -272,7 +272,7 @@
self.ftp_upload_site = kwargs.get( 'ftp_upload_site', None )
self.allow_library_path_paste = kwargs.get( 'allow_library_path_paste',
False )
self.disable_library_comptypes = kwargs.get( 'disable_library_comptypes',
'' ).lower().split( ',' )
- self.watch_tools = string_as_bool( kwargs.get( 'watch_tools', False ) )
+ self.watch_tools = kwargs.get( 'watch_tools', 'false' )
# On can mildly speed up Galaxy startup time by disabling index of help,
# not needed on production systems but useful if running many functional tests.
self.index_tool_help = string_as_bool( kwargs.get( "index_tool_help",
True ) )
diff -r 33fd43f7590f17ed611ce07178cae8c2b70525d0 -r
525b1fc16a587e91d60cdc4f9152f8e881b7e7de lib/galaxy/tools/toolbox/watcher.py
--- a/lib/galaxy/tools/toolbox/watcher.py
+++ b/lib/galaxy/tools/toolbox/watcher.py
@@ -2,9 +2,11 @@
try:
from watchdog.events import FileSystemEventHandler
from watchdog.observers import Observer
+ from watchdog.observers.polling import PollingObserver
can_watch = True
except ImportError:
FileSystemEventHandler = object
+ PollingObserver = object
can_watch = False
import logging
@@ -12,23 +14,34 @@
def get_watcher(toolbox, config):
- watch_tools = getattr(config, "watch_tools", False)
- if watch_tools:
+ watch_tools_val = str( getattr(config, "watch_tools", False) ).lower()
+ if watch_tools_val in ( 'true', 'yes', 'on' ):
return ToolWatcher(toolbox)
+ elif watch_tools_val == "auto":
+ try:
+ return ToolWatcher(toolbox)
+ except Exception:
+ log.info("Failed to load ToolWatcher (watchdog is likely unavailable) -
proceeding without tool monitoring.")
+ return NullWatcher()
+ elif watch_tools_val == "polling":
+ log.info("Using less ineffecient polling toolbox watcher.")
+ return ToolWatcher(toolbox, observer_class=PollingObserver)
else:
return NullWatcher()
class ToolWatcher(object):
- def __init__(self, toolbox):
+ def __init__(self, toolbox, observer_class=None):
if not can_watch:
raise Exception("Watchdog library unavailble, cannot watch
tools.")
+ if observer_class is None:
+ observer_class = Observer
self.toolbox = toolbox
self.tool_file_ids = {}
self.tool_dir_callbacks = {}
self.monitored_dirs = {}
- self.observer = Observer()
+ self.observer = observer_class()
self.event_handler = ToolFileEventHandler(self)
self.start()
https://bitbucket.org/galaxy/galaxy-central/commits/d1c3d84a7e06/
Changeset: d1c3d84a7e06
Branch: release_15.03
User: jmchilton
Date: 2015-02-24 04:09:19+00:00
Summary: Comment out broken liftOver tests.
liftOver loc file handling is problematic (
https://trello.com/c/A6I6zQvF). If it
weren't this wouldn't be a problem. I could fix the API functional test framework
to mimic the older form driven approach but it would take a week and would be rendered
moot by fixing liftOver. Unfortunately, fixing liftOver would likely break a lot of
existing workflows and tool reruns so I am not fixing that either.
Only option left, admittedly a crappy one, is to comment out the tests.
Affected #: 1 file
diff -r 525b1fc16a587e91d60cdc4f9152f8e881b7e7de -r
d1c3d84a7e06553cf948fcbd8c00b45bebcfb059 tools/extract/liftOver_wrapper.xml
--- a/tools/extract/liftOver_wrapper.xml
+++ b/tools/extract/liftOver_wrapper.xml
@@ -62,6 +62,7 @@
<requirement
type="package">ucsc_tools</requirement></requirements><tests>
+ <!--
<test><param name="input" value="5.bed"
dbkey="hg18" ftype="bed" /><param name="to_dbkey"
value="panTro2" />
@@ -100,6 +101,7 @@
<output name="out_file1"
file="cuffcompare_in1_mult_liftover_mapped.bed"/><output
name="out_file2"
file="cuffcompare_in1_mult_liftover_unmapped.bed"/></test>
+ --></tests><help>
.. class:: warningmark
Repository URL:
https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from
bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.