On Mon, Jan 25, 2016 at 4:59 PM, Peter Cock p.j.a.cock@googlemail.com wrote:
On Mon, Jan 25, 2016 at 4:44 PM, John Chilton jmchilton@gmail.com wrote:
I think the problem is more that it is configured globally and not per-destination. The real user stuff should all be per-destination and not globally configured - since it should be possible to have like a dedicated cluster for Galaxy jobs that just run jobs normally and a general purpose cluster that submits jobs as the real user for accounting purposes.
Excellent point.
I have created a WIP pull request to move the configuration of these options in that direction:
https://github.com/galaxyproject/galaxy/pull/1573
I haven't tested any of the changes in the PR yet - I just wanted to open something to ensure I'd come back and finish things this cycle.
It is something that I have wanted to do for a while now - see https://trello.com/c/6w8bples. In general there are a bunch of Galaxy options for jobs that can only be configured in galaxy.ini but that you may wish to have different values for depending on the job destination.
That makes a lot of sense :)
Recap: Running jobs on a cluster as the real user can break the local job runner under Galaxy v16.01. This was a Galaxy bug due to the external_chown_script setting being used on all job runners (even when the file owner should have stayed as the Galaxy Linux account).
John had a pull request to improve this,
https://github.com/galaxyproject/galaxy/pull/1573
This was superseded by the following which has been merged:
https://github.com/galaxyproject/galaxy/pull/1688
I think this means that per-job-runner config will be possible in the next release, so we can set external_chown_script for only for DRMAA jobs sent to the cluster.
We're considering trying an alternative of using SGE with a separate queue consisting of just the Galaxy server, as a substitute for the local worker - but we won't have a chance to try that till next week.
We are currently doing this on our test Galaxy v16.01 server, but it does make the cluster integration even more complicated (the Galaxy server must be both an SGE submit node and also an SGE worker node, and you need an extra queue just for sending upload jobs etc to run on the Galaxy server).
Peter