Skip to content

Nuke DCC Integration Issue #2077

Description

@lukemidg

Using the provided scripts to add the opencue submit to nuke causes issues with interpreting the yaml config file. It works fine without the config file. It also works fine when submitted outside of nuke.

To reproduce, opencue submit is installed on rocky linux in a python 3.11 environment. I'm using Nuke 16 to submit. The Nuke environment variables point to the yaml, cuebot ip, and the python environment. It is installed as a menu button and when run it spits out the error.

Normally this submits as expected to cuebot and begins rendering but it falls apart when the config yaml is used.

OpenCue version is 1.13.8

Here are the logs:

Failed to submit job!
"
b'Traceback (most recent call last):
 File "CueNukeSubmit.py", line 104, in 
 main(args.file, args.nodes)
 File "CueNukeSubmit.py", line 89, in main
 app = CueSubmitNukeApp(nukeFile, writeNodes)
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 File "CueNukeSubmit.py", line 72, in __init__
 self.mainWindow = CueSubmitNukeWindow(NUKE_WINDOW_TITLE, filename=nukeFile,
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 File "CueNukeSubmit.py", line 53, in __init__
 self.submitWidget = Submit.CueSubmitWidget(
 ^^^^^^^^^^^^^^^^^^^^^^^
 File "/CueSubmit/lib64/python3.11/site-packages/cuesubmit/ui/Submit.py", line 245, in __init__
 self.jobDataChanged()
 File "/CueSubmit/lib64/python3.11/site-packages/cuesubmit/ui/Submit.py", line 398, in jobDataChanged
 self.updateFeedbackCommand(self.jobTreeWidget.currentLayerData)
 File "/CueSubmit/lib64/python3.11/site-packages/cuesubmit/ui/Submit.py", line 402, in updateFeedbackCommand
 command = Submission.buildLayerCommand(layerData=layerData, silent=True)
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 File "/CueSubmit/lib64/python3.11/site-packages/cuesubmit/Submission.py", line 174, in buildLayerCommand
 command = buildDynamicCmd(layerData)
 ^^^^^^^^^^^^^^^^^^^^^^^^^^
 File "/CueSubmit/lib64/python3.11/site-packages/cuesubmit/Submission.py", line 63, in buildDynamicCmd
 for (flag, isPath, isMandatory), value in layerData.cmd.items():
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: too many values to unpack (expected 3)

I also added some debug prints:

DEBUG: configData['RENDER_CMDS'] = {'Shell': {'command': '', 'options': {'{Command to run}': '\
'}}, 'Maya': {'command': 'Render', 'services': ['maya', 'arnold'], 'limits': ['arnold license limit'], 'options': {'-r {Renderer}': ['file', 'default', 'hw2', 'sw', 'arnold'], '-s {Start Frame}': '#FRAME_START#', '-e {End Frame}': '#FRAME_END#', '{!mayaFile*}': ['Maya Ascii file (*.ma)', 'Maya Binary file (*.mb)', 'Maya file (*.ma *.mb)']}}, 'Blender': {'command': 'blender', 'options': {'--background~': '', '-noaudio~': '', '{!file*}': ['Blender file (*.blend)'], '-s {Start Frame}': '#FRAME_START#', '-e {End Frame}': '#FRAME_END#', '-o {Output Path (Optional)*}': '//render_', '-F {Output Format}': ['', 'AVIJPEG', 'AVIRAW', 'BMP', 'CINEON', 'DPX', 'EXR', 'HDR', 'IRIS', 'IRIZ', 'JP2', 'JPEG', 'MPEG', 'MULTILAYER', 'PNG', 'RAWTGA', 'TGA', 'TIFF']}}, 'Nuke': {'command': '/usr/local/Nuke14.1v4/Nuke14.1', 'services': ['nuke'], 'limits': ['nuke license limit'], 'options': {'-X {!Write Nodes}': '', '-F {Frame Range}': '#FRAME_START#-#FRAME_END#', '-x {!Nuke File*}': ['Nuke Script File (*.nk)']}}}
DEBUG: layerData.layerType = 'Nuke'
DEBUG: JobTypes.JobTypes.FROM_CONFIG_FILE = dict_keys(['Shell', 'Maya', 'Blender', 'Nuke'])
DEBUG: using buildDynamicCmd
DEBUG: layerData.cmd = dict_items([('nukeFile', '0000_shots_TST_001_animation_work_main_v001.nk'), ('writeNodes', '[All]')])
DEBUG: renderCommand = /usr/local/Nuke14.1v4/Nuke14.1

Activity

  1. lithorus commented on Nov 13, 2025

    @lithorus
    Collaborator

    I should mention that it's when CUESUBMIT_CONFIG_FILE is used to specifiy the config file.

  2. lithorus commented on Nov 14, 2025

    @lithorus
    Collaborator

    It can also be re-produced with this code from outside nuke :

     CUESUBMIT_CONFIG_FILE=./cuesubmit/cuesubmit_config.example.yaml python3 ./cuesubmit/plugins/nuke/CueNukeSubmit.py --file test.nk --nodes Write1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions