We use cookies and similar tools to enhance your experience, provide our services, deliver relevant advertising, and make improvements. Approved third parties also use these tools to help us deliver advertising and provide certain site features.
Customize cookie preferences
We use cookies and similar tools (collectively, "cookies") for the following purposes.
Essential
Essential cookies are necessary to provide our site and services and cannot be deactivated. They are usually set in response to your actions on the site, such as setting your privacy preferences, signing in, or filling in forms.
Performance
Performance cookies provide anonymous statistics about how customers navigate our site so we can improve site experience and performance. Approved third parties may perform analytics on our behalf, but they cannot use the data for their own purposes.
Allowed
Functional
Functional cookies help us provide useful site features, remember your preferences, and display relevant content. Approved third parties may set these cookies to provide certain site features. If you do not allow these cookies, then some or all of these services may not function properly.
Allowed
Advertising
Advertising cookies may be set through our site by us or our advertising partners and help us deliver relevant marketing content. If you do not allow these cookies, you will experience less relevant advertising.
Allowed
Blocking some types of cookies may impact your experience of our sites. You may review and change your choices at any time by clicking Cookie preferences in the footer of this site. We and selected third-parties use cookies or similar technologies as specified in the AWS Cookie Notice.
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.