I would like to ask how you distribute UBA settings to users. From what I understand, UBA configuration is done through the file Engine\Saved\UnrealBuildTool\BuildConfiguration.xml, which allows enabling UBA compilation, setting the number of cores, etc. Is there any way to configure this file and distribute it to users? Is there any GUI for this, similar to Unreal Toolbox, where similar settings can be managed for the Horde agent?
We have been considering a solution on our side: adding a button to the workspace panel in UGS that would open new settings representing a basic UI panel for configuring the BuildConfiguration.xml file. Or is there a better approach to this? What would you recommend?
Yes, UBT and in turn UBA can be configured via that .xml file. In 5.7, UBT settings can also be configured through .ini files, like BaseEngine.ini.
For internal projects at Epic, we distribute these settings as part of checked in code in the Perforce stream. There’s no UI to change this but we also don’t expect developers to change these.
Older style of BuildConfiguration.xml based configuration can also be checked in of course.
What settings do you want users/developers to change?
A BaseEngine.ini example:
[Horde]
ServerUrl="https://horde.mystudio.com/"
; Default provider used if none are set for UnrealBuildTool
[Uba.Provider.Horde]
Pool=MyPoolForUba
MaxCores=1000