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? :)