Files
workflows/unused/unity-parallel.yaml
2025-07-13 18:06:25 -07:00

90 lines
3.2 KiB
YAML

name: "Unity Build Workflow"
on:
workflow_call:
workflow_dispatch:
env:
GITEA_TOKEN: ${{ secrets.PACKAGE_APIKEY }}
SKIP_CACHE: ${{ vars.SKIP_CACHE && vars.SKIP_CACHE || 'false' }}
ZIP_COMPRESSION_LEVEL: ${{ vars.ZIP_COMPRESSION_LEVEL && vars.ZIP_COMPRESSION_LEVEL || '9' }}
UNITY_COMPRESSION_LEVEL: lz4hc
UNITY_ZIP_ON_COMPLETE: false
UNITY_USERNAME: ${{ secrets.UNITY_USERNAME }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
NO_GRAPHICS: ${{ vars.NO_GRAPHICS && vars.NO_GRAPHICS || 'true' }}
# For the Android keystore.
MINIO_URL: ${{ vars.MINIO_URL && vars.MINIO_URL || 'https://minio.studiowhy.net' }}
MINIO_ACCESS_KEY: ${{ secrets.MINIO_ACCESS_KEY }}
MINIO_SECRET_KEY: ${{ secrets.MINIO_SECRET_KEY }}
UNITY_KEYSTORE_PATH: ${{ vars.UNITY_KEYSTORE_PATH && vars.UNITY_KEYSTORE_PATH || 'studiowhy.keystore' }}
UNITY_KEYSTORE_KEY_ALIAS: ${{ vars.UNITY_KEYSTORE_ALIAS && vars.UNITY_KEYSTORE_ALIAS || 'studiowhy' }}
UNITY_KEYSTORE_PASSWORD: ${{ secrets.UNITY_KEYSTORE_PASSWORD }}
UNITY_KEYSTORE_KEY_PASSWORD: ${{ secrets.UNITY_KEYSTORE_KEY_PASSWORD }}
jobs:
build-unity-master1:
name: "Build ${{ matrix.platform.os }}"
runs-on: master1
strategy:
max-parallel: 1
matrix:
platform:
- os: Windows
method: StudioWhy.BatchBuild.BuildWindows
- os: Windows32Bit
method: StudioWhy.BatchBuild.BuildWindows32Bit
suffix: Windows_32bit
- os: WindowsARM
method: StudioWhy.BatchBuild.BuildWindowsArm
suffix: Windows_ARM
steps:
- name: "Checkout"
uses: https://github.com/actions/checkout@v3
with:
submodules: true
token: ${{ env.GITEA_TOKEN }}
- name: "Build Unity Project"
uses: act/unity/unity-project-cached-artifacts@master
with:
platform: ${{ matrix.platform.os }}
email: ${{ env.UNITY_USERNAME }}
password: ${{ env.UNITY_PASSWORD }}
executeMethod: ${{ matrix.platform.method }}
noGraphics: ${{ env.NO_GRAPHICS }}
artifactSuffix: ${{ matrix.platform.suffix || matrix.platform.os }}
compression-level: ${{ env.ZIP_COMPRESSION_LEVEL }}
skipRestore: ${{ env.SKIP_CACHE }}
build-unity-master2:
name: "Build ${{ matrix.platform.os }}"
runs-on: master2
strategy:
max-parallel: 1
matrix:
platform:
- os: OSX
method: StudioWhy.BatchBuild.BuildOSX
- os: Linux
method: StudioWhy.BatchBuild.BuildLinux
- os: Android
method: StudioWhy.BatchBuild.BuildAndroid
steps:
- name: "Checkout"
uses: https://github.com/actions/checkout@v3
with:
submodules: true
token: ${{ env.GITEA_TOKEN }}
- name: "Build Unity Project"
uses: act/unity/unity-project-cached-artifacts@master
with:
platform: ${{ matrix.platform.os }}
email: ${{ env.UNITY_USERNAME }}
password: ${{ env.UNITY_PASSWORD }}
executeMethod: ${{ matrix.platform.method }}
noGraphics: ${{ env.NO_GRAPHICS }}
artifactSuffix: ${{ matrix.platform.suffix || matrix.platform.os }}
compression-level: ${{ env.ZIP_COMPRESSION_LEVEL }}
skipRestore: ${{ env.SKIP_CACHE }}