kuler90 / setup-unity

GitHub Action to download and install Unity on Ubuntu, macOS or Windows. Based on Unity Hub
MIT License
37 stars 33 forks source link
continuous-integration github-actions unity unity-hub

setup-unity

GitHub Actions status GitHub Actions status GitHub Actions status

GitHub Action to download and install Unity. Based on Unity Hub.

Works on Ubuntu, macOS and Windows.

Inputs

unity-version

Unity version to install. For example, 2019.4.9f1. Project version will be used if not provided.

unity-version-changeset

Unity version changeset. For example, 50fe8a171dd9. Automatically parsed from Unity site if not provided.

unity-modules

List of Unity modules (e.g. build support) to install. For example, [ios, android, webgl].

Available modules can be found in the test workflows (test-ubuntu, test-macos, test-windows).

Also list of available modules can be found by execute <unity-hub> -- --headless help but result may contains wrong names.

unity-modules-child

Automatically installs all child modules of selected modules. For example, android-open-jdk and android-sdk-ndk-tools for android. Default true.

project-path

Path to Unity project. Used to find Unity version. Default ${{ github.workspace }}.

install-path

Path where the Unity editor will be installed.

self-hosted

If true, avoid to invoke commands with sudo. Default false.

Outputs

unity-version

Unity version.

unity-path

Unity executable path. Also set as an environment variable UNITY_PATH.

Known issues

Example usage

- name: Checkout project
  uses: actions/checkout@v2

- name: Setup Unity
  uses: kuler90/setup-unity@v1
  with:
    unity-modules: android

- name: Activate Unity
  uses: kuler90/activate-unity@v1
  with:
    unity-username: ${{ secrets.UNITY_USERNAME }}
    unity-password: ${{ secrets.UNITY_PASSWORD }}
    unity-authenticator-key: ${{ secrets.UNITY_AUTHENTICATOR_KEY }}

- name: Build Unity
  uses: kuler90/build-unity@v1
  with:
    build-target: Android
    build-path: ./build.apk