Peter Cock wrote:
Well, use of the dependency system isn't required, so just setting things up on the $PATH is always a possibility. I was going to suggest that your patch could be applied if it was conditional on the local runner and checked after any <requirement type="package"> dependencies were setup, ...
Is that a request for me to update the patch? I've not delved into the job runner code before, so it might take me a bit longer that it would take you. Hint hint ;) I'd help with testing though.
It's not a completely trivial thing, which is why I didn't do it at the time. It's probably something that should be added to the DRM wrapper script so that a nice error message can be supplied. I can't think of a way to check at tool load that wouldn't be painfully slow.
... but there's still the problem of people running jobs through the local runner which are actually sent to the cluster without Galaxy's knowledge. Perhaps this is something we shouldn't worry too much about, but I know there are people doing it.
You mean if Galaxy blindly calls a tool or script, and that script then submits the job to the cluster? I'd say checking the cluster dependencies there was the tool author's responsibility.
Yeah, that's the idea. Unfortunately, if the binary isn't installed on the Galaxy server (which is irrelevant), the tool won't load, which is certainly not what we want. --nate
Peter