Nuke Interactive and render licenses

Post Reply
a1ex3d
Posts: 1
Joined: Tue Aug 08, 2017 1:27 pm

Nuke Interactive and render licenses

Post by a1ex3d »

Hello, is where a way to use render and interactive licenses for render in farm for Nuke? Simultaneous
User avatar
timurhai
Site Admin
Posts: 910
Joined: Sun Jan 15, 2017 8:40 pm
Location: Russia, Korolev
Contact:

Re: Nuke Interactive and render licenses

Post by timurhai »

Hi.
You can create a nuke command wrapper that will add/remove some flags.
You can change task command in a Python service class.
Timur Hairulin
CGRU 3.3.1, Ubuntu 20.04, 22.04, MS Windows 10 (clients only).
rtoor
Posts: 1
Joined: Sat Jul 11, 2020 10:49 pm

Re: Nuke Interactive and render licenses

Post by rtoor »

A little bit of a newbie here...

What would be the easiest way to approach changing the -i flag to -r?

I understand that "/opt/cgru/plugins/nuke" holds some of the python that parses together the command line render script, is this where I should look?
User avatar
timurhai
Site Admin
Posts: 910
Joined: Sun Jan 15, 2017 8:40 pm
Location: Russia, Korolev
Contact:

Re: Nuke Interactive and render licenses

Post by timurhai »

Hi.
In the Python service class:
https://github.com/CGRU/cgru/blob/maste ... es/nuke.py

It`s inherited from service.py class, so you can override this function:
https://github.com/CGRU/cgru/blob/maste ... ce.py#L198
Timur Hairulin
CGRU 3.3.1, Ubuntu 20.04, 22.04, MS Windows 10 (clients only).
martinvfx
Posts: 6
Joined: Wed Oct 11, 2023 9:21 pm

Re: Nuke Interactive and render licenses

Post by martinvfx »

Thanks. This helped me as I ran into the same issue of only having a gui license currently which doesn't work when running the default nuke command 'nuke -t'

It's a dirty hack right now but the following works for me. It just reruns the same command with a gui license if the default command exits on code 100.
Surely there are experts on how to do this properly but maybe it helps someone else.

/opt/cgru/afanasy/python/services/nuke.py

Code: Select all

 def getCommand(self):
        command = self.taskInfo['command']
        gui_license_command = command.replace("nuke -t","nuke -ti")
        command = command + '; if [ $? == 100 ]; then echo "!!! Afanasy nuke service wrapper: Exit code 100. Try gui license instead.";' + gui_license_command + ';fi'
        return command
User avatar
timurhai
Site Admin
Posts: 910
Joined: Sun Jan 15, 2017 8:40 pm
Location: Russia, Korolev
Contact:

Re: Nuke Interactive and render licenses

Post by timurhai »

Hello!

I am not a Nuke artist, i am not managing its licences.
So i do not exactly know what is going on, and is going wrong.
You want to launch 2 Nukes on 1 machine with different licenses (command flags)?
You have 5х"t" licenses and 10x"i" for the entire farm, and the entire system should count "i" and "t" nuke starts?
In both cases you can store and read some info in some file during "def getCommand(self)", may be file should be the same (shared) for the entire farm.

Also you can ask other Nuke users, what they do? How other render managers solves this issue?
(I do not know anybody with this problem)
Timur Hairulin
CGRU 3.3.1, Ubuntu 20.04, 22.04, MS Windows 10 (clients only).
martinvfx
Posts: 6
Joined: Wed Oct 11, 2023 9:21 pm

Re: Nuke Interactive and render licenses

Post by martinvfx »

Hi Timur,

Sorry for the misunderstanding. Didn't want to cause confusion. I just thought I post my solution as maybe other people like the original poster may run into the same thing.

Basically, what is happening is that I only have one nuke license currently (a gui license). The command that is executed by afanasy is 'nuke -t' which throws an error as it tries to pull in a nuke_render license (non gui) and it doesn't seem to use my gui license in this instance.

My workaround from above reruns the commad with nuke -ti in order to use the gui license that I have installed.
It's good enough for me, so don't worry about it. Appreciate you coming back to me.

Thanks
Martin
Post Reply