Work From Home: Automatic configuration of XGE over VPN (experimental)

UE4 uses Incredibuild to improve engine and shaders compilation times. Using Remote Desktop to connect to a PC in the office allows developers to take advantage of an existing XGE farm. Unfortunately, Remote Desktop isn’t ideal for running interactive editor sessions and users that need to debug the editor often resort to compiling on their local PC. Using XGE from a local PC over VPN is highly taxing on the internet connection and can lead to worse compilation times.

To help with this situation, we added a mechanism that disables the XGE executor in UnrealBuildTool if the user is connected to the coordinator via a VPN. This determination is made by checking whether the IP address of the adapter that routes to the coordinator is blacklisted.

This behavior can be configured by submitting an Engine/Programs/UnrealBuildTool/NotForLicensees/BuildConfiguration.xml file with the following contents:



<?xml version="1.0" encoding="utf-8"?>  <Configuration xmlns="https://www.unrealengine.com/BuildConfiguration">
  [INDENT=2]<XGE>[/INDENT]
  [INDENT=3]<bAllowOverVpn>false</bAllowOverVpn>
<VpnSubnets>[/INDENT]
  [INDENT=4]<Item>10.1.2.3/24</Item>
<Item>10.4.5.6/24</Item>[/INDENT]
  [INDENT=3]</VpnSubnets>[/INDENT]
  [INDENT=2]</XGE>[/INDENT]
  </Configuration>
  

The new code is in:

Perforce

  • //UE4/Main/Engine/Source/Programs/UnrealBuildTool/Executors/XGE.cs //UE4/Main/Engine/Source/Programs/UnrealBuildTool/System/Subnet.cs //UE4/Main/Engine/Source/Programs/UnrealBuildTool/System/PlatformExports.cs //UE4/Main/Engine/Source/Programs/UnrealBuildTool/UnrealBuildTool.csproj

GitHub


See more work from home tips!