Getting Started
Orchestrator lets you run Unity builds on whatever machines you have: cloud, on-premise, or your
local machine. It works as a built-in plugin for game-ci/unity-builder in GitHub Actions, or as a
standalone CLI tool.
Prerequisites
- A Unity project
- A cloud provider account (AWS or a Kubernetes cluster) or Docker installed locally
- Provider credentials (as GitHub secrets or environment variables)
Choose a Provider
Pick the provider that fits your setup. Each tab shows a minimal quick-start snippet.
- AWS Fargate
- Kubernetes
- Local Docker
Easiest option — fully managed, no servers to maintain.
Set up your AWS credentials as GitHub secrets (AWS_ROLE_ARN for OIDC or AWS_ACCESS_KEY_ID /
AWS_SECRET_ACCESS_KEY for static keys), then use providerStrategy: aws:
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.AWS_ROLE_ARN }}
aws-region: eu-west-2
- uses: game-ci/unity-builder@v4
with:
providerStrategy: aws
targetPlatform: StandaloneLinux64
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
See the AWS provider page for full setup.
Best if you already have a cluster.
Base64-encode your kubeconfig and store it as a GitHub secret (KUBE_CONFIG):
- uses: game-ci/unity-builder@v4
with:
providerStrategy: k8s
targetPlatform: StandaloneLinux64
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
env:
kubeConfig: ${{ secrets.KUBE_CONFIG }}
See the Kubernetes provider page for cluster tips.
No cloud account needed — runs on your own machine.
Requires Docker and a self-hosted GitHub Actions runner:
# runs-on: self-hosted
- uses: game-ci/unity-builder@v4
with:
providerStrategy: local-docker
targetPlatform: StandaloneLinux64
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
See the Local Docker provider page for details.
See Providers for the full list and detailed setup guides.
GitHub Actions
When you set providerStrategy in game-ci/unity-builder, the orchestrator activates
automatically. No separate install step is needed.
Basic example
- uses: game-ci/unity-builder@v4
with:
providerStrategy: aws
targetPlatform: StandaloneLinux64
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
Full workflow example
name: Build
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: game-ci/unity-builder@v4
env:
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
with:
providerStrategy: aws
targetPlatform: StandaloneLinux64
gitPrivateToken: ${{ secrets.GITHUB_TOKEN }}
Command Line
1. Install
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/game-ci/orchestrator/main/install.sh | sh
# Windows (PowerShell)
irm https://raw.githubusercontent.com/game-ci/orchestrator/main/install.ps1 | iex
2. Set credentials
export UNITY_SERIAL="XX-XXXX-XXXX-XXXX-XXXX-XXXX"
export AWS_ACCESS_KEY_ID="..."
export AWS_SECRET_ACCESS_KEY="..."
3. Run a build
game-ci build \
--target-platform StandaloneLinux64 \
--provider-strategy aws
See the CLI documentation for full details.
Next Steps
- Provider setup guides - configure your cloud credentials
- API Reference - full parameter documentation
- Examples - more workflow examples
- CLI Reference - full CLI flag reference