Horde - posibility to specify agent/pool to run

Hi,

is there any option how to force build on Horde to be executed on specific agent/pool?

I know im able to specify Agent Type in buildgraph, but is there any posibility how to specify it without buildgraph modification? Maybe some parameters in Horde web UI -> new job?

In some cases we wana to run build on some specific agent (can be substitued with pool) for debugging purposes.

Thanks and regards

Lubos Suk

Hey there Lubos,

Thank you for the question, and apologies for the delay in my reply.

Buildgraph is currently the idiomatic way, and/or also using your stream configuration & pool (via agentTypes). That being said, you can use the Advanced modal when kicking off a job to provide specific build graph arguments. So you could author your build graph in such a way to support optional redirection to a different pool.

[Image Removed]

Kind regards,

Julian

Hi Julian,

thanks for pointing me up. So im able to specify custom agentTypes in *.stream.json and then mark nodes in buildGraph with agentType based on given parameter from template?

So i can change all nodes in all buildgraph that will use agentType based on Option with default value empty, and then can pass this by AdditionalArguments? Or even create some UI element to specify it?

Is it possible to have multiple agentTypes with OR/AND between them?

Or am i missing something. Are there any examples of this? I was trying to look on UDN but without success.

thanks and regards

Lubos

Hey there Lubos,

Yes you’re on the right track via Additional Arguments (which will allow you to use the start modal to JIT change the pool).

https://github.com/EpicGames/UnrealEngine/blob/5\.6/Engine/Build/Graph/Examples/BuildEditorAndTools.xml\#L55

preferred agent is a good example of exposing this, and how it’s integrated into the build graph script.

https://github.com/EpicGames/UnrealEngine/blob/5\.6/Engine/Build/Graph/Tasks/BuildAndTestProject.xml\#L280

This specific line also demonstrates how we are conditionally setting the type if some other prop is true.

Regarding OR/AND - you could try and define an agent type that represents a superset, and then just specify that AgentType.

I hope this helps.

Kind regards,

Julian