Anyone attempted to run Pyblish across a network? A simple scenario, perform collection + validation on one machine, then perform extraction + integration on another station with the same context. Thought I’d ask here and see if anyone had already attempted this or had any insight.
Sure, you could do this with pyblish.util
. You’d have to collect in both scenarios to get some context to work with, so it’ll be collection + validation
on machineA then collection + extraction + integration
on machineB.
You would also need to persist the data to disk between machineA and machineB. This would either be persisting the data in a DCC workfile like Maya or Nuke, or if you are not in a DCC to begin with you could save the context to a .json
file or something.
I haven’t done it, but if I was I’d look into e.g. Deadline and other network task-management tools. You could e.g. have one of your validators call on Deadline to schedule further Pyblish tasks on a farm of machines, and await their completion. That way you’d delegate network load balancing and picking the right machines for the task to something suited for it.
Thanks for the feedback. I’ll try adding serialization/deserialization to AbstractEntity and see if I can restore the Context/Instance collection between plugin evaluation.