| Method |
Description |
GitHub Action with |
Pass parameters directly in your workflow file. See Getting Started. |
| Command Line |
Pass parameters as CLI flags. See Command Line. |
| Environment Variables |
Set parameters as environment variables in your shell or CI environment. |
| Pull Secrets |
Pull parameters dynamically from secret managers or files. See Secrets. |
Set the mode to control what Orchestrator does. Default: cli-build.
| Mode |
Description |
cli-build |
Run a standard build workflow. |
list-resources |
List active cloud resources. |
list-workflow |
List running workflows. |
watch |
Follow logs of a running workflow. |
garbage-collect |
Clean up old resources. See Garbage Collection. |
cache-push |
Push to the caching directory. Uses cachePushTo. |
cache-pull |
Pull from the caching directory. Uses cachePullFrom. |
hash |
Hash folder contents recursively. |
print-input |
Print all resolved input parameters. |
remote-cli-pre-build |
Set up a repository before a build (used internally by workflows). |
remote-cli-post-build |
Push LFS files and Library cache after a build (used internally). |
| Parameter |
Default |
Description |
providerStrategy |
local |
Provider type to use. Built-in: aws, k8s, local-docker, local. Also accepts config:<path> for config-defined providers, plus GitHub URLs, NPM packages, or local paths for custom providers. |
containerCpu |
1024 |
CPU units for cloud containers (1024 = 1 vCPU). See provider setup guides for allowed values. |
containerMemory |
3072 |
Memory in MB for cloud containers (4096 = 4 GB). See provider setup guides for allowed values. |
orchestratorBranch |
main |
Release branch of Orchestrator for remote containers. Use orchestrator-develop for latest development builds. |
orchestratorRepoName |
game-ci/unity-builder |
Repository for Orchestrator source. Override to use a fork for testing or custom builds. |
| Parameter |
Default |
Description |
engine |
unity |
Game engine name. Built-in configurations include unity, godot, and unreal. |
enginePlugin |
- |
Engine provider plugin source for custom or overridden engine behavior. NPM package, cli:<path>, or docker:<image>. See Engine Plugins. |
| Parameter |
Default |
Description |
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. |
cloneDepth |
50 |
Depth of the git clone. Use 0 for a full clone. |
allowDirtyBuild |
false |
Allow building from a branch with uncommitted changes. |
| Parameter |
Default |
Description |
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 Jobs. |
| Parameter |
Default |
Description |
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. |
| Parameter |
Default |
Description |
storageProvider |
s3 |
Storage backend for caching and artifacts. Accepted values: s3, rclone. |
rcloneRemote |
- |
Rclone remote endpoint. Required when storageProvider is rclone. |
| Parameter |
Default |
Description |
awsStackName |
game-ci |
Name 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. |
| Parameter |
Default |
Description |
kubeConfig |
- |
Base64-encoded Kubernetes config file. |
kubeVolume |
- |
Name of the persistent volume claim to use. |
kubeVolumeSize |
5Gi |
Size of the persistent volume. |
kubeStorageClass |
- |
Storage class for the persistent volume. Empty = auto-install via rook. |
| Parameter |
Default |
Description |
cacheKey |
(branch name) |
Scope for sharing cache entries. Builds with the same key share a cache. |
maxRetainedWorkspaces |
0 |
Maximum number of retained workspaces. 0 = unlimited. Above the limit, jobs use standard caching. |
| Parameter |
Default |
Description |
githubCheck |
false |
Create a GitHub Check for each orchestrator step. See GitHub Integration. |
asyncOrchestrator |
false |
Run in async mode - returns immediately without waiting for the build to complete. |
watchToEnd |
true |
Whether to follow the build logs until completion. |
| Parameter |
Default |
Description |
orchestratorDebug |
false |
Enable verbose debug logging (resource tracking, directory tree, environment listing). |
resourceTracking |
false |
Enable resource tracking logs with disk usage summaries. |
useLargePackages |
false |
Redirect packages containing "LargePackage" in manifest.json to a shared folder across builds with the same cache key. |
useSharedBuilder |
false |
Use a shared clone of Game CI. Saves storage when using a single Orchestrator release branch. |
useCompressionStrategy |
true |
Use LZ4 compression for cache and build artifacts. |
useCleanupCron |
true |
Create an AWS CloudFormation cron job to automatically clean up old resources. |
| Parameter |
Default |
Description |
testSuitePath |
- |
Path to YAML test suite definition file. |
testFilterRefs |
- |
Comma-separated test filter preset names injected into every run in the suite. |
testFilterInjection |
- |
Inline YAML or JSON test filter overlay injected into every run. |
testFilterInjectionPath |
- |
Path to a YAML or JSON test filter overlay file injected into every run. |
testResultFormat |
junit |
Structured result output format: junit, json, or both. |
testResultPath |
./test-results |
Output directory for structured test results. |
| Parameter |
Default |
Description |
garbageMaxAge |
24 |
Maximum age in hours before resources are cleaned up. |
These parameters are only available when using Orchestrator from the command line.
| Parameter |
Description |
populateOverride |
Enable pulling secrets from an external command. |
cachePushFrom |
Local directory to push cache from. |
cachePushTo |
Remote path to push cache to. |
artifactName |
Name for the build artifact. |
select |
Select a specific workflow or resource by name. |
| Variable |
Description |
USE_IL2CPP |
Set to false to disable IL2CPP builds. |
AWS_FORCE_PROVIDER |
Force provider when LocalStack is detected. Values: aws, aws-local, or empty. |
ORCHESTRATOR_AWS_STACK_WAIT_TIME |
CloudFormation stack timeout in seconds. Default: 600. |
PURGE_REMOTE_BUILDER_CACHE |
Set to clear the remote builder cache before a build. |
GIT_PRIVATE_TOKEN |
Separate token for LFS pulls (falls back to gitPrivateToken). |
All parameters with descriptions:
game-ci/unity-builder action.yml