Skip to main content
Version: v4 (current)

API Reference

⚙️ Configuration Methods

MethodDescription
GitHub Action withPass parameters directly in your workflow file. See Getting Started.
Command LinePass parameters as CLI flags. See Command Line.
Environment VariablesSet parameters as environment variables in your shell or CI environment.
Pull SecretsPull parameters dynamically from secret managers or files. See Secrets.

🔧 Modes

Set the mode to control what Orchestrator does. Default: cli-build.

ModeDescription
cli-buildRun a standard build workflow.
list-resourcesList active cloud resources.
list-workflowList running workflows.
watchFollow logs of a running workflow.
garbage-collectClean up old resources. See Garbage Collection.
cache-pushPush to the caching directory. Uses cachePushTo.
cache-pullPull from the caching directory. Uses cachePullFrom.
hashHash folder contents recursively.
print-inputPrint all resolved input parameters.
remote-cli-pre-buildSet up a repository before a build (used internally by workflows).
remote-cli-post-buildPush LFS files and Library cache after a build (used internally).

📋 Parameters

Provider

ParameterDefaultDescription
providerStrategylocalCloud provider to use. Built-in: aws, k8s, local-docker, local. Also accepts a GitHub URL, NPM package, or local path for custom providers.
containerCpu1024CPU units for cloud containers (1024 = 1 vCPU). See provider setup guides for allowed values.
containerMemory3072Memory in MB for cloud containers (4096 = 4 GB). See provider setup guides for allowed values.
orchestratorBranchmainRelease branch of Orchestrator for remote containers. Use orchestrator-develop for latest development builds.
orchestratorRepoNamegame-ci/unity-builderRepository for Orchestrator source. Override to use a fork for testing or custom builds.

Engine

ParameterDefaultDescription
engineunityGame engine name. Built-in: unity. Other engines require enginePlugin.
enginePlugin-Engine plugin source. NPM package, cli:<path>, or docker:<image>. See Engine Plugins for details and source formats.

Git Synchronization

ParameterDefaultDescription
gitPrivateToken-GitHub access token with repo access. Used for git clone and LFS.
githubOwner-GitHub owner or organization name.
GITHUB_REPOSITORY(auto)Repository in owner/repo format. Auto-detected in GitHub Actions.
GITHUB_REF(auto)Git ref to build. Falls back to branch or GitSHA parameters.
cloneDepth50Depth of the git clone. Use 0 for a full clone.
allowDirtyBuildfalseAllow building from a branch with uncommitted changes.

Custom Hooks

ParameterDefaultDescription
containerHookFiles-Names of container hook files from .game-ci/container-hooks/.
customHookFiles-Names of custom hook files from .game-ci/hooks/.
customCommandHooks-Inline command hooks as YAML.
postBuildSteps-Post-build job in YAML format with keys: image, secrets, command.
preBuildSteps-Pre-build job (after repo setup, before build) in YAML format.
postBuildContainerHooks-Container hook files to run after the build step.
preBuildContainerHooks-Container hook files to run before the build step.
customJob-Custom job YAML to override the default build workflow. See Custom Job.

Pull Secrets

ParameterDefaultDescription
readInputOverrideCommand-Command to read a parameter value from an external source. Use {0} as the parameter name placeholder. Built-in presets: gcp-secret-manager, aws-secret-manager. See Secrets.
readInputFromOverrideList-Comma-separated list of parameter names to pull via readInputOverrideCommand.

Storage

ParameterDefaultDescription
storageProviders3Storage backend for caching and artifacts. Accepted values: s3, rclone.
rcloneRemote-Rclone remote endpoint. Required when storageProvider is rclone.

AWS

ParameterDefaultDescription
awsStackNamegame-ciName of the persistent shared CloudFormation base stack.
awsEndpoint-Base endpoint override for all AWS services (e.g. LocalStack).
awsCloudFormationEndpoint-CloudFormation service endpoint override.
awsEcsEndpoint-ECS service endpoint override.
awsKinesisEndpoint-Kinesis service endpoint override.
awsCloudWatchLogsEndpoint-CloudWatch Logs service endpoint override.
awsS3Endpoint-S3 service endpoint override.

Kubernetes

ParameterDefaultDescription
kubeConfig-Base64-encoded Kubernetes config file.
kubeVolume-Name of the persistent volume claim to use.
kubeVolumeSize5GiSize of the persistent volume.
kubeStorageClass-Storage class for the persistent volume. Empty = auto-install via rook.

Caching

ParameterDefaultDescription
cacheKey(branch name)Scope for sharing cache entries. Builds with the same key share a cache.
maxRetainedWorkspaces0Maximum number of retained workspaces. 0 = unlimited. Above the limit, jobs use standard caching.

GitHub Integration

ParameterDefaultDescription
githubCheckfalseCreate a GitHub Check for each orchestrator step. See GitHub Integration.
asyncOrchestratorfalseRun in async mode - returns immediately without waiting for the build to complete.
watchToEndtrueWhether to follow the build logs until completion.

Build Options

ParameterDefaultDescription
orchestratorDebugfalseEnable verbose debug logging (resource tracking, directory tree, environment listing).
resourceTrackingfalseEnable resource tracking logs with disk usage summaries.
useLargePackagesfalseRedirect packages containing "LargePackage" in manifest.json to a shared folder across builds with the same cache key.
useSharedBuilderfalseUse a shared clone of Game CI. Saves storage when using a single Orchestrator release branch.
useCompressionStrategytrueUse LZ4 compression for cache and build artifacts.
useCleanupCrontrueCreate an AWS CloudFormation cron job to automatically clean up old resources.

Garbage Collection

ParameterDefaultDescription
garbageMaxAge24Maximum age in hours before resources are cleaned up.

🖥️ CLI-Only Parameters

These parameters are only available when using Orchestrator from the command line.

ParameterDescription
populateOverrideEnable pulling secrets from an external command.
cachePushFromLocal directory to push cache from.
cachePushToRemote path to push cache to.
artifactNameName for the build artifact.
selectSelect a specific workflow or resource by name.

🌍 Environment Variables

VariableDescription
USE_IL2CPPSet to false to disable IL2CPP builds.
AWS_FORCE_PROVIDERForce provider when LocalStack is detected. Values: aws, aws-local, or empty.
ORCHESTRATOR_AWS_STACK_WAIT_TIMECloudFormation stack timeout in seconds. Default: 600.
PURGE_REMOTE_BUILDER_CACHESet to clear the remote builder cache before a build.
GIT_PRIVATE_TOKENSeparate token for LFS pulls (falls back to gitPrivateToken).

All parameters with descriptions: game-ci/unity-builder action.yml