Skip to content

[SDK-3400]: Make sure only 1 job runs UI tests at a time #138

[SDK-3400]: Make sure only 1 job runs UI tests at a time

[SDK-3400]: Make sure only 1 job runs UI tests at a time #138

Workflow file for this run

---
name: Test & Build
on:
push:
branches: [main]
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
if: github.event.pull_request.head.repo.fork == false
name: Test sample game 🧪
runs-on: ubuntu-latest-8-cores
steps:
- uses: actions/checkout@v3
with:
lfs: true
- run: git lfs pull
- uses: game-ci/unity-test-runner@v4
id: passportTest
env:
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
with:
unityVersion: 2021.3.26f1
projectPath: './sample'
githubToken: ${{ secrets.GITHUB_TOKEN }}
testMode: 'EditMode'
- uses: actions/upload-artifact@v4
if: always()
with:
name: Test results
path: ${{ steps.passportTest.outputs.artifactsPath }}
- uses: actions/upload-artifact@v4
if: always()
with:
name: Coverage results
path: ${{ steps.passportTest.outputs.coveragePath }}
build:
needs: test
name: Build for ${{ matrix.targetPlatform }}
runs-on: ubuntu-latest-8-cores
strategy:
fail-fast: false
matrix:
targetPlatform:
- iOS
- Android
- WebGL
# - StandaloneOSX
- StandaloneWindows64
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
lfs: true
- uses: actions/cache@v3
with:
path: Library
key:
Library-${{ matrix.targetPlatform }}-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}
restore-keys: |
Library-${{ matrix.targetPlatform }}
Library-
- uses: game-ci/unity-builder@v4
env:
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
with:
unityVersion: 2021.3.26f1
targetPlatform: ${{ matrix.targetPlatform }}
projectPath: sample
- name: Deploy to GitHub Pages
uses: JamesIves/[email protected]
if: matrix.targetPlatform == 'WebGL'
with:
branch: gh-pages
folder: build/WebGL/WebGL
- uses: actions/upload-artifact@v4
if: always()
with:
name: Build-${{ matrix.targetPlatform }}
path: build