Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rageagainstthepixel/unity-setup
A GitHub action for setting up the Unity Game Engine for CI/CD workflows.
https://github.com/rageagainstthepixel/unity-setup
action automation cd ci ci-cd editor game-ci game-development github github-actions install setup unity unity-editor unity-setup unity3d
Last synced: 2 months ago
JSON representation
A GitHub action for setting up the Unity Game Engine for CI/CD workflows.
- Host: GitHub
- URL: https://github.com/rageagainstthepixel/unity-setup
- Owner: RageAgainstThePixel
- License: mit
- Created: 2024-08-04T01:54:04.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-21T03:07:55.000Z (4 months ago)
- Last Synced: 2024-10-10T09:44:15.315Z (2 months ago)
- Topics: action, automation, cd, ci, ci-cd, editor, game-ci, game-development, github, github-actions, install, setup, unity, unity-editor, unity-setup, unity3d
- Language: TypeScript
- Homepage:
- Size: 408 KB
- Stars: 6
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# unity-setup
A GitHub Action for setting up the [Unity Game Engine](https://unity.com) on GitHub Action Runners.
## How to use
### workflow
```yaml
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
unity-versions:
- 'in version file'
- 2019.4.40f1
- 2020.x
- 2021.3.x
- 2022.3
- 6000
include:
- os: ubuntu-latest
build-targets: StandaloneLinux64, Android, iOS
modules: linux-server
- os: windows-latest
build-targets: StandaloneWindows64, Android, WSAPlayer
modules: windows-server
- os: macos-13
build-targets: StandaloneOSX, Android, iOS
modules: mac-server
- os: macos-latest
build-targets: StandaloneOSX, Android, iOS, VisionOS
modules: mac-server
steps:
- uses: RageAgainstThePixel/unity-setup@v1
with:
version-file: 'path/to/your/ProjectSettings.ProjectVersion.txt'
unity-version: ${{ matrix.unity-versions }} # overrides version in version-file
build-targets: ${{ matrix.build-targets }}
modules: ${{ matrix.modules }}- run: |
echo "UNITY_HUB_PATH: '${{ env.UNITY_HUB_PATH }}'"
echo "UNITY_EDITORS: '${{ env.UNITY_EDITORS }}'"
echo "UNITY_EDITOR_PATH: '${{ env.UNITY_EDITOR_PATH }}'"
echo "UNITY_PROJECT_PATH: '${{ env.UNITY_PROJECT_PATH }}'"
```### inputs
| name | description | required |
| ----------- | ----------- | ----------- |
| `version-file` | Specify a path to search for the unity project version text file. Useful if there are multiple projects in a single repo. Pass `None` if creating a new project to skip file search. | false |
| `unity-version` | Specify the Unity version(s) to install. You must include the changeset! i.e `2019.4.13f1 (518737b1de84)`. ***This will override any version specified in the `version-file`!*** | false |
| `build-targets` | Specify the build targets to install for. Remaps to corresponding module. One or more of `StandaloneWindows64` `WSAPlayer` `StandaloneOSX` `iOS` `StandaloneLinux64` `Android` `Lumin` `WebGL` `VisionOS`. | false |
| `modules` | Modules to install with the editor. This list can be different per editor version. | false |
| `architecture` | Specify the architecture to install. Either `x86_64` or `arm64`. | false |### outputs
- `UNITY_HUB_PATH`: The path to the installed unity hub.
- `UNITY_PROJECT_PATH`: The path to the Unity project.
- `UNITY_EDITOR_PATH`: The path to the last installed version of Unity.
- `UNITY_EDITORS`: A json object of each editor installation `{"version":"path"}`.