Hi Everyone,
Thanks for all your replies, I will address each one individually, just to be sure I don’t miss anything.
@Dwight
The nuke jobs being submitted all have the bitness check set to None, I just verified that. No artist knows what ‘build to force’ should mean anyway - it’s a bit of a misnomer to the unintroduced or non-technical person.
In case a member of the dev team is having a look, here is the usecase: In posix, scripts are first-class executables. If they have a shebang, and their executable bit set, the kernel will execute it. This is what I expect from any system running on posix which executes programs for me. To test it’s working, please just setup a non-command plugin of your choice (like nuke) to run a shell script, instead of the actual nuke executable.
On windows, this isn’t standard, and scripts are indeed inferior and thus need special handling. However, if you can execute a .bat file in place of an actual nuke executable, you would be on the safe side. Even better of this is generalised to allowing to execute any file whose file-extension is associated. For instance, .py files are usually executed using the last installed python interpreter.
@eamsler
Thanks for your elaborate reply !
Depending on who the target audience is, the way this is implemented might (have) be(en) the right way to go. Personally, I find the system not helpful at all, the opposite is true, at least in the current implementation.
First, it’s unable to determine that a file is not actually binary, and therefore always fails the bitness check
Second, the bitness check is done even though it’s set to None. In case my assumption is incorrect, we are back to the original problem that for some reason it cannot execute interpreted files, something I grew to expect on posix systems at least.
The entire feature seems to cater only a very small group of people. This group must be using a 64bit operating system, place 64bit and 32bit executables into the respective search paths (e.g. via plugin configuration), and then want to run the 32bit version of that executable instead of the 64bit one, and decide that per job. How unlikely is that ? If for some reason I want to run the 32bit version, I certainly don’t want to have to decide that per job, instead I’d just remove the 64bit version from the plugin configuration. Otherwise, the executable in question must be very broken if the 32bit version must be used on a per-job basis.
From my point of view, things would change to the better if that feature would just go away. Look at all the time we spend here to figure out what’s going on, it was a difficult process that I have never experienced thus far. After all, other task queues just do their job and execute the file they are given.
Therefore I would choose option 1).
About 2), just to state it one more time: build to force is None and scripts in place of say the nuke executable will fail to execute. Please see the usecase above for you to reproduce it. I am not using and will not use the CommandScript plugin, as it’s not useful to artists. The usecase behind that I have explained in all detail in a previous post in this topic, which you might want to read as well.
The third and safest option might be to leave everything unchanged, but try to get the usecase working I mentioned in my reply to Dwight.
Cheers mate
PS: The deadline version we are using is this one
Deadline Monitor 6.2
Deadline Version: 6.2.0.32 R (2563d5bc8)
FranticX Version: 2.1.0.0 R (e79558020)