Unable to use UBA with remote windows machines when compiling on Linux

While the engine is building, in the output log it will repeatedly connect to a remote client throughout the build. When investigating UnrealBuildTool/Log.txt (attached), it’s clear that the remote agents are actually failing to start the UbaAgent process.

As a sanity check, our configuration does definitely work for Windows hosts, we’re already heavily using it for our primary office workstations. Which is nice :slight_smile:

Is this a supported configuration, running on a different platform from the host? I’ve not yet tried running the HordeAgent on a linux machine to determine if it would work there, but since most of our studio are Windows workstations (and the plan is to use their idle cycles to accelerate builds), it would be awesome if our folks running linux could leverage the same pool.

Thank you!

0>[Worker353] Connected to DESKTOP-KLHNKRB (192.168.17.235) under lease 698ad0784f129a3b4401f780 (agent version: 5.7.1-33961)
0>[Worker354] Connected to DESKTOP-KO7N3D1 (192.168.17.161) under lease 698ad0784f129a3b4401f787 (agent version: 5.7.1-33961)
0>[Worker355] Connected to DESKTOP-QLCGCH4 (192.168.17.189) under lease 698ad0784f129a3b4401f78e (agent version: 5.7.1-33961)
0>[Worker356] Connected to DESKTOP-RBI7DA7 (192.168.17.5) under lease 698ad0794f129a3b4401f796 (agent version: 5.7.1-33961)

[Attachment Removed]

Steps to Reproduce

  1. On a machine running Linux (In my case, Fedora 43 x64), pull the latest version of the engine source code (in our case, Unreal Engine 5.7.2)
  2. On a machine running windows (Windows 10), configure the HordeAgent with a pool that allows it to accept Compute tasks
  3. Configure the project to compile with UBA via a central Horde server for distributing tasks (editing the Engine.ini with a UBA provider and enabling horde builds via UserEngine.ini)
  4. Begin compiling the engine.
    [Attachment Removed]

Hi there,

With the reservation that I have not misunderstood the question. There is no support for having windows machines helping Linux machines compiling. What you could do is run a WSL on your windows machines and then run the Linux horde agent in WSL, that way they can help Linux machines build.

The ideal setup is to have all helpers run native Linux and then use wine to help windows machines, but I understand that might be problematic if the helper machines are used for other things than just helping distributed code/shader compiling

[Attachment Removed]

Gotcha! That makes sense -- I wasn’t entirely sure how the magic worked under the hood, so admittedly a bit of wishful thinking that would keep our setup simple :slight_smile:

I had not considered running native linux with Wine to handle windows machines -- that’s something I’ll look into that for our non-interactive machines for sure. For our workstations, it’d be a bit complicated to get everyone deployed with a spare WSL instance, so I think we’ll just keep that separated for the time being.

In any case, very much appreciate the answer + additional thoughts!

[Attachment Removed]