Deadline Farm Caching from Houdini FileCache HDA Launched via AYON

I’ve created a custom FileCache HDA in Houdini.
Houdini is launched through the AYON environment, and I’m submitting the cache to the farm using Deadline.

The submission is currently failing because AYON-related environment variables are not being resolved correctly on the worker machines.
In addition to the default AYON environment, I’ve also defined custom Houdini environment variables via AYON, and I need these variables to be exported and available on the farm workers as well.

I really appreciate any help you can provide.

2026-01-30 19:45:24:  0: STDOUT: Detected Houdini version: (21, 0, 559)
2026-01-30 19:45:24:  0: STDOUT: ['/var/lib/Thinkbox/Deadline10/workers/ashu-node-01/plugins/697cbcf40a0aac56b04d5e42/hrender_dl.py', '-f', '1001', '1050', '1', '-g', '-d', '/stage/sopnet1/bmfx_file_cache3/ropnet/geometry', '-tempdir', '/var/lib/Thinkbox/Deadline10/workers/ashu-node-01/jobsData/697cbcf40a0aac56b04d5e42/0_tempPzhTA0', '-arnoldAbortOnLicenseFail', '1', '/jobs/BlackMirror_Library/library/sq010/houdini/lighting/BML_sq010_lighting_v006.hip']
2026-01-30 19:45:24:  0: STDOUT: Start: 1001
2026-01-30 19:45:24:  0: STDOUT: End: 1050
2026-01-30 19:45:24:  0: STDOUT: Increment: 1
2026-01-30 19:45:24:  0: STDOUT: Ignore Inputs: True
2026-01-30 19:45:24:  0: STDOUT: No output specified. Output will be handled by the driver
2026-01-30 19:45:24:  0: STDOUT: Driver: /stage/sopnet1/bmfx_file_cache3/ropnet/geometry
2026-01-30 19:45:24:  0: STDOUT: Input File: /jobs/BlackMirror_Library/library/sq010/houdini/lighting/BML_sq010_lighting_v006.hip
2026-01-30 19:45:24:  0: STDOUT: Error running event handler:
2026-01-30 19:45:24:  0: STDOUT: Traceback (most recent call last):
2026-01-30 19:45:24:  0: STDOUT:   File "Sop/bmfx_file_cache::1.0, PythonModule", line 1, in <module>
2026-01-30 19:45:24:  0: STDOUT: ModuleNotFoundError: No module named 'ayon_houdini'
2026-01-30 19:45:24:  0: STDOUT: Warnings were generated during load.
2026-01-30 19:45:24:  0: STDOUT: Error loading: /jobs/BlackMirror_Library/library/sq010/houdini/lighting/BML_sq010_lighting_v006.hip
2026-01-30 19:45:24:  0: STDOUT: Warning:     
2026-01-30 19:45:24:  0: STDOUT: /stage/sopnet1/bmfx_file_cache:
2026-01-30 19:45:24:  0: STDOUT: Begin Path Mapping
2026-01-30 19:45:25:  0: Sending kill command to process tree with root process 'hython-bin' with process id 231587
2026-01-30 19:45:25:  0: Done executing plugin command of type 'Render Task'

env vars like HOUDINI_OTL_PATH needs to be set before launching the app.

Have you tried adding these env vars to application addon either below the application or in a new tool?

Also, Are you submitting DL jobs via AYON publisher?


I have created houdini vars like this

No, I’m not submitting via publisher, because those are just normal caches

This setting sets the env vars after the application is launched.
And, it won’t work with houdini vars like HOUDINI_OTL_PATH as it’s expected to be set before the application launch.

Currently, you need to submit via AYON publisher as it initializes your DL job with AYON env which includes ayon_houdini python module.

did you mean point cache?

It depends on what you want to publish. if you want to publish point cache with alembic representation, you’d choose Point Cache (ABC) and select Farm Rendering in render target option in the publisher.

Hmm, but I don’t want to publish it.
Is there any way to do it without publishing?

What I’d recommend is to do the submission, but in AYON settings set the default for those jobs to have their publish jobs suspended, so that they don’t run? That way they just export from Houdini, but do not publish.

If you really want to make sure you run through your own submissions, make sure to pass along the required Job Environment Variables. To get a sense of what’s needed there, do a submission via AYON and check the Job properties - and mimic its behavior, that may be the easiest approach.

Update / Solution

I was able to resolve the issue.

I generated a JSON file containing:

  • All required AYON environment variables
  • My custom Houdini variables, including the Python path

This JSON file is saved inside the cache version folder during submission.

On the Deadline side, I load this JSON in the GlobalJobPreLoad script and explicitly set the environment variables from it before the job starts.

With this approach, all AYON and custom Houdini environment variables are correctly available on the farm workers, and the FileCache job is now running successfully.

Hope this helps someone facing a similar issue :+1: