Event plugin not working in Deadline 5.1

Hello,

We have recently upgraded to Deadline 5.1 and our one event plugin has ceased to work. The plugin in question submit things to Shotgun. I know that there is a new feature to do this in 5.1 but our one is/was already working fine and is quite tailored to our needs so I’d like to continue using it.

We run a slave and pulse on the linux machine that handles these Shotgun jobs and when one of the jobs gets picked up by the slave it errors with the message below and then locks up both the slave and pulse. The slave and pulse then have to be killed and restarted to get them to come back.

** (/usr/local/Thinkbox/Deadline/bin/deadlineslave.exe:4289): WARNING **: Could not load file or assembly 'System.Runtime.Remoting, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. Events plugin 'post_approval_event' could not be loaded from the repository because: Error executing event plugin script "/mnt/system/Deadline5Repository/events/post_approval_event/post_approval_event.py": The classes in the module cannot be loaded. (Deadline.Events.DeadlineEventPluginException)

Has something changed in the way these plugins need to be written because it was all working fine on 5.0?

Dan

Update:

I think I may be getting somewhere with this. Our plugin would call a python script using the command line in order to pick up our code base and gain access to Shotgun. It now seems that the script environment has changed to such a degree that it can no longer do this?

How do I go about setting up this environment correctly so it can see our code base properly. I’ve tried adding the path in the Repository Options > Python Settings but that didn’t seem to help.

Update:

I got it going again but I had to hack an environment variable into the actual python script itself.

I am still having trouble with our linux box though. The slave seems to just crash as soon as it loads the job even though the same job runs fine through a mac box?

Hi Dan,

This is strange. I would have thought that modifying the repository options to include the path to your python scripts would have been enough.

Would you consider switching your script to a Python.NET script? By using Python.NET, you can import and use native python libraries and cmodules, which makes it a lot easier to integrate with existing scripts in your pipeline. The Python.NET specific information can be found at the end of this section:
thinkboxsoftware.com/deadlin … -_Required

Our Shotgun event plugin is a Python.NET script, so you can use that as a reference if you want.

Cheers,

  • Ryan