Hi,
I've tried to do a simple test where I change the output dataset name programmatically before it appears in the history using exec_before_job(). I just copied some example code:
def exec_before_job(inp_data, out_data, param_dict, tool):I get the following error:
for name, data in out_data.items():
data.name = 'New name'
Traceback (most recent call last):
File "/gpfshpc/home/lhermida/soft/galaxy/galaxy_dist/lib/galaxy/jobs/runners/drmaa.py", line 124, in queue_job
job_wrapper.prepare()
File "/gpfshpc/home/lhermida/soft/galaxy/galaxy_dist/lib/galaxy/jobs/__init__.py", line 364, in prepare
out_data=out_data, tool=self.tool, param_dict=incoming)
File "/gpfshpc/home/lhermida/soft/galaxy/galaxy_dist/lib/galaxy/tools/__init__.py", line 1664, in call_hook
return code( *args, **kwargs )
TypeError: ('E', 'r', 'r', 'o', 'r', ' ', 'i', 'n', ' ', "'", 'T', 'e', 's', 't', 'i', 'n', 'g', "'", ' ', 'h', 'o', 'o', 'k', ' ', "'", 'e', 'x', 'e', 'c', '_', 'b', 'e', 'f', 'o', 'r', 'e', '_', 'j', 'o', 'b', "'", ',', ' ', 'o', 'r', 'i', 'g', 'i', 'n', 'a', 'l', ' ', 'm', 'e', 's', 's', 'a', 'g', 'e', ':', ' ', 'e', 'x', 'e', 'c', '_', 'b', 'e', 'f', 'o', 'r', 'e', '_', 'j', 'o', 'b', '(', ')', ' ', 'g', 'o', 't', ' ', 'm', 'u', 'l', 't', 'i', 'p', 'l', 'e', ' ', 'v', 'a', 'l', 'u', 'e', 's', ' ', 'f', 'o', 'r', ' ', 'k', 'e', 'y', 'w', 'o', 'r', 'd', ' ', 'a', 'r', 'g', 'u', 'm', 'e', 'n', 't', ' ', "'", 'i', 'n', 'p', '_', 'd', 'a', 't', 'a', "'")