AWS Thinkbox Discussion Forums

Best practices for Submitting a Draft Job

Hello,

We just purchased Deadline and spent the last month testing and connecting it to our Shotgun Pipeline.
We use Shotgun Pipeline Toolkit for our pipeline needs and managed to build an easy to use Shot Publishing App that automaticaly submits our renders to Deadline.

I noticed that the submitters in the monitor have Shotgun options and also the possibility to auto generate a Quicktime with Draft and upload it.

What’s the best way to spawn a Draft render after, say, our Nuke renders have finished? Now we just pipe our renders through FFMpeg using a PostJobScript which is attatached to the Job by our Pipeline Toolkit.

However, the Draft way of doing this is exposed in the Submission Plugins by default (you just select Create version and upload, etc). However we do do things with scripts so I was wondering if I still need to set a PostJobScript or is there another way which is already enabled in the Shotgun Event plugin, like the version creation. It seems the plugin already has a lot of standard funtionality, so I wondered if creating a Draft job is there without me knowing it.

In other words, the Shotgun event plugin already handles version creation. So we don’t have to script this. Is this also the casemfor the Draft Quicktime generation/uploading? Or is this still something we need tomcreate a script for?

Does this make sense?

Kind regards,

David

Hey David,

Submitting Draft jobs after a Job completes is pretty easy to do with our Draft Event Plugin.

Like you’ve noticed, our out-of-the-box submitters hook into this, as does the feature for creating/uploading Quicktimes to Shotgun. This is all done by specifying specific ExtraInfoKeyValuePairs with the Job at submission time, and the Draft Event Plugin handles the submission of the Draft Job, etc.

If you just want to submit an arbitrary Draft Job after a Job completes, here are the ExtraInfoKeyValuePair s you want to specify:
DraftTemplate -> Path to the Draft Script (required)
DraftUsername -> Passed to the Draft Script as “username=” (optional)
DraftEntity -> Passed to the Draft Script as “entity=” (optional)
DraftVersion -> Passed to the Draft Script as “version=” (optional)
DraftFrameWidth -> Passed to the Draft Script as “width=” (optional)
DraftFrameHeight -> Passed to the Draft Script as “height=” (optional)
DraftExtraArgs -> Appended to the rest of the parameters passed to the Draft Script (optional)

On the flip side, if you just want to create and upload QT’s to Shotgun, and are already tying the Job to a Shotgun Version successfully, you should just need to specify the following ExtraInfoKeyValuePair in the Job:
Draft_CreateSGMovie=True

Similarly, Draft_CreateSGFilmstrip will create & upload a filmstrip to the created SG Version, if set to True.

Also note that in order for any of this to work, the Draft Event Plugin needs to be enabled.

Let me know if you have any questions!

Cheers,
Jon

Hi Jon,

Thanks for the quick reply!
Well this was the answer I was hoping for.

Luckily we have already tied our Versions to Jobs by using the ExtraInfoKeyValuePair fields.
So adding some more should should be straightforward.

Is there a list for all the fields available by the way? Good to have as a reference.

So when we use the Draft_CreateSGmovie function, does this use default recommended settings for Quicktimes for Shotgun?
Or is this something we need to specify ourselfs?

Also, we use different LUTs per show. In our Shot submission app, we can choose what Colorspace the preview quicktimes should be rendered in (and what LUT should be baked in). If we need a different LUT for a Draft Job I guess thats where where the “custom” fields come in like what template should be used.

Cheers!

David
VFX Supervisor
STORM Post Amsterdam

Hey David,

In terms of available fields, did you mean for Job Submission in general? Or particularly for the ExtraInfoKeyValuePairs? A reference of general parameters can be found here:
docs.thinkboxsoftware.com/produc … ssion.html

In terms of ExtraInfoKeyValuePairs specifically, this is a feature that we exposed mostly for use by user-made Plugins so they can store/maintain arbitrary data with the Jobs. The only place we use it for our shipping stuff is with the Shotgun and Draft Event Plugins, I believe, most of which you’ve likely encountered already or have been mentioned in this thread :slight_smile:.

In terms of the “Draft_CreateSGmovie” functionality, it just creates a simple H264 quicktime, and uploads it. No LUTs or anything. More specifically, it uses the Draft Script located at “events/Shotgun/Draft_CreateShotgunMovie.py” to do this. You could modify this script directly, but if it needs to take in additional parameters, that might not make things much easier.

In that case, I’d recommend submitting an ‘arbitrary’ Draft Job (ie, the first method in my previous post), so you have more control over the parameters being passed to your Script. You can set an ExtraInfoKeyValuePair of “DraftUploadToShotgun=True”, which I apparently forgot to mention previously. This should upload the output of your Draft script to the Shotgun Version tied to the Job, provided it is at the location specified in the “outFile” parameter passed to the Draft script.

I hope this answered your question!

Cheers,
Jon

Excelent!

This answers it for now!
Thanks for the clear feedback Jon!

I’m gonna try these methods in our submission scripts today.

I let you know how it went.

Cheers,

David

Privacy | Site terms | Cookie preferences