Hi,
I've been trying to get Galaxy to submit jobs to my cluster as the
"real user" rather than the "galaxy" user.
In my galaxy.ini, I have:
outputs_to_working_directory = True
set_metadata_externally = True
drmaa_external_runjob_script = /galaxy/scripts/drmaa_external_runner.py
drmaa_external_killjob_script = /galaxy/scripts/drmaa_external_killer.py
drmaa_external_chown_script = /galaxy/scripts/external_chown_script.py
In my sudoers file I have:
galaxy ALL= (root) NOPASSWD: SETENV: /galaxy/scripts/drmaa_external_runner.py
galaxy ALL= (root) NOPASSWD: SETENV: /galaxy/scripts/drmaa_external_killer.py
galaxy ALL= (root) NOPASSWD: SETENV: /galaxy/scripts/external_chown_script.py
In my log file, I'm seeing:
galaxy.jobs.runners.drmaa DEBUG 2014-10-29 14:45:54,777 (15)
submitting file
/galaxy/database/job_working_directory/000/15/galaxy_15.sh
galaxy.jobs.runners.drmaa DEBUG 2014-10-29 14:45:54,783 (15)
submitting with credentials: tjg [uid: 28369]
galaxy.jobs.runners ERROR 2014-10-29 14:45:54,784 (15) Unhandled
exception calling queue_job
Traceback (most recent call last):
File "/galaxy/lib/galaxy/jobs/runners/__init__.py", line 96, in run_next
method(arg)
File "/galaxy/lib/galaxy/jobs/runners/drmaa.py", line 189, in queue_job
filename = self.store_jobtemplate(job_wrapper, jt)
File "/galaxy/lib/galaxy/jobs/runners/drmaa.py", line 348, in
store_jobtemplate
f = open(filename,'w')
IOError: [Errno 2] No such file or directory: '/galaxy/database/pbs/15.jt_json'
My /var/log/messages file is not reporting any attempt to run "sudo",
so I think the process is failing before it gets to that point in the
Galaxy code.
If I comment out the "drmaa_external_*" lines, the jobs are submitted
successfully and run as the "galaxy" user.
What am I missing here? :)
--
Tim Gustafson
tjg(a)ucsc.edu
831-459-5354
Baskin Engineering, Room 313A