Hi there,
I’m trying to add a post-job script to an already submitted Job. If you add a Python script via the UI, a post-job task is created. I’m trying to add a post-job script and also create the post-job task to run it. Can someone help me out? How do i add the script and task task via script?
This is what i have so far, doesn’t work
[code]import re
from System.IO import *
from Deadline.Scripting import *
from Deadline.Jobs import *
from Deadline.Plugins import *
def main():
selectedJobs = MonitorUtils.GetSelectedJobs()
myjob = selectedJobs[0]
global myscript
myscript = ‘Y:/#deadline_repository/custom/scripts/Jobs/TestPostJobScript.py’
myjob.SetJobPluginInfoKeyValue(“PostJobScript”, myscript)
myjob.JobPostJobScript(myscript)
RepositoryUtils.SaveJob(myjob)
[/code]
Unfortunately, this looks to be a bug. Here’s my test code, with some minor improvements. Note that “myjob.JobPostJobScript(myscript)” isn’t callable and instead needs to be assigned, so “myjob.JobPostJobScript = myscript” is correct. However, there is a bug which is stopping the post/pre job tasks from being created in the task collection, although the job property for the post job script is assigned correctly.
I’ll log this bug now for you…
[code]from Deadline.Scripting import *
def main():
myscript = “/path/to/script.py”
selectedJobs = MonitorUtils.GetSelectedJobs()
if len(selectedJobs) > 0:
for job in selectedJobs:
job.JobPostJobScript = myscript #fails to create a post job task
#job.JobPostTaskScript = myscript
#job.JobPreJobScript = myscript #fails to create a pre job task
#job.JobPreTaskScript = myscript
RepositoryUtils.SaveJob(job)[/code]
Thank you very much for your reply!
For now i managed to avoid using a post-job script. Once the Bug is fixed i’m gonna change functionality to use it as intended