Skip to content
Latchkey

Unreal "RunUAT.sh ... BUILD FAILED" in CI

RunUAT runs the Unreal Automation Tool, which orchestrates build, cook, and stage. "BUILD FAILED" is the summary line; the actual error is a compile, cook, or stage failure logged above it.

What this error means

A RunUAT.sh BuildCookRun ... step ends with "AutomationTool exiting with ExitCode=1" and "BUILD FAILED", with the underlying error earlier in the log.

unreal
AutomationTool executed for 0h 4m 12s
AutomationTool exiting with ExitCode=1 (Error_Unknown)
RunUAT.sh ERROR: AutomationTool was unable to run successfully.
BUILD FAILED

Common causes

A compile or cook step failed upstream

RunUAT chains several phases. A C++ compile error in UnrealBuildTool or a cook failure makes the whole BuildCookRun report BUILD FAILED.

Missing engine paths or arguments

A wrong project path, target, or platform argument makes AutomationTool exit before doing useful work.

How to fix it

Find the first real error in the AutomationTool log

  1. Scroll up from "BUILD FAILED" to the first ERROR: or compile failure.
  2. Fix that compile, cook, or argument issue specifically.
  3. Re-run RunUAT; the summary line is not the cause.

Run BuildCookRun with explicit args

Pass the project, platform, and target explicitly so AutomationTool has everything it needs.

Terminal
./Engine/Build/BatchFiles/RunUAT.sh BuildCookRun \
  -project="$PWD/MyGame.uproject" -noP4 -platform=Linux \
  -clientconfig=Development -cook -build -stage -pak

How to prevent it

  • Read the upstream error, not just the BUILD FAILED summary.
  • Pass explicit project, platform, and config arguments.
  • Keep the engine and project on matching versions.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →