Thanks Edwin, I’ve just fired that onto a node and it’s not showing PYTHONPATH at all with zero scripts and a fresh launcher & slave session.
I’m like you and thinking there’s something polluting something here. I’ve got a clean 6.2 test repo which I’ll throw a fresh client install onto a node here and push some more tests and report back on that.
That’s not working either. On a clean 6.2 repo install share with a clean repo mongo db (note this test repo has been upgraded from 6.0 recently) and with a completely cleaned out local client install and re-install, complete with multi-reboots, and without any pre-task/job scripts I ran the cmd set cmd line and got the following results:
If we set the node to have a system wide PYTHONPATH env in the local machine env vars that shows up in the job output when I run the cmd set job.
If we set something in the repo options, such as an additional PYTHONPATH it doesn’t affect this already in existence path.
If I take out the system-wide PYTHONPATH env var it goes away and the repo config additional search path simply doesn’t appear even if we try and script the additional paths in the pre-task scripts.
My conclusion is that something is placing an empty PYTHONPATH variable if there isn’t one set system wide and when there is one set system wide it’s not appending to it.
We’ve got workarounds in place but a fair bit of significant time went into them and it’s not ideal for us to leave it this way. I’ll summarise this and push this thread into a support ticket I think. Thanks for your help on this one, talk more shortly no doubt!
Addendum: IF there is anything else you’d like us to try and report back on I’d be more than happy to carry on
The Python instance that it’s modifying is purposely not modifying it for the render process. Those settings are just for the Deadline-based Python instance for doing things like event plugins and the like. Things that shouldn’t affect what we start up.
To do what you’re after, you’ll need to create some pre-load scripts for the plugins you want to modify the environment for. Here’s an example in the docs: thinkboxsoftware.com/deadlin … -_Optional
You’d place the JobPreload.py file in any plugins you’d want to override the settings for.
Oddly enough, in the example, we’re calling Environment.SetEnvironmentVariable(), but you might have better luck with deadlinePlugin.SetProcessEnvironmentVariable().
Ah, got you Edwin. Thanks for clarifying, quite a good explanation as to what I was experiencing and I can completely understand the thinking behind it.