From 9e2265d148ad5f4e5ef9fc28df77ff704cb58b9b Mon Sep 17 00:00:00 2001 From: Ikiru Yoshizaki <3856350+guitarrapc@users.noreply.github.com> Date: Tue, 30 Jul 2024 14:46:59 +0900 Subject: [PATCH] ci: split job for build and test --- .github/workflows/build-debug.yml | 61 +++++++++++++++++++++---------- 1 file changed, 42 insertions(+), 19 deletions(-) diff --git a/.github/workflows/build-debug.yml b/.github/workflows/build-debug.yml index 579788a..daf446f 100644 --- a/.github/workflows/build-debug.yml +++ b/.github/workflows/build-debug.yml @@ -40,25 +40,6 @@ jobs: - uses: actions/checkout@v4 - # Execute Unittest - # /opt/Unity/Editor/Unity -quit -batchmode -nographics -silent-crashes -logFile -projectPath . -executeMethod UnitTestBuilder.BuildUnitTest /headless /ScriptBackend IL2CPP /BuildTarget StandaloneLinux64 - - name: Build UnitTest - uses: Cysharp/Actions/.github/actions/unity-builder@main - env: - UNITY_EMAIL: ${{ steps.op-load-secret.outputs.UNITY_EMAIL }} - UNITY_PASSWORD: ${{ steps.op-load-secret.outputs.UNITY_PASSWORD }} - UNITY_SERIAL: ${{ steps.op-load-secret.outputs.UNITY_SERIAL }} - with: - projectPath: src/UniTask - unityVersion: ${{ matrix.unity }} - targetPlatform: StandaloneLinux64 - buildMethod: UnitTestBuilder.BuildUnitTest - customParameters: "/headless /ScriptBackend IL2CPP" - - name: Check UnitTest file is generated - run: ls -lR ./src/UniTask/bin/UnitTest - - name: Execute UnitTest - run: ./src/UniTask/bin/UnitTest/StandaloneLinux64_IL2CPP/test - # Execute scripts: Export Package # /opt/Unity/Editor/Unity -quit -batchmode -nographics -silent-crashes -logFile -projectPath . -executeMethod PackageExporter.Export - name: Build Unity (.unitypacakge) @@ -83,3 +64,45 @@ jobs: name: UniTask.unitypackage-${{ matrix.unity }}.zip path: ./src/UniTask/*.unitypackage retention-days: 1 + + test-unity: + needs: [build-unity] + if: ${{ (github.event_name == 'push' && github.repository_owner == 'Cysharp') || startsWith(github.event.pull_request.head.label, 'Cysharp:') }} + strategy: + fail-fast: false + matrix: + unity: ["2021.3.41f1", "2022.3.38f1", "6000.0.11f1"] # Test with LTS + runs-on: ubuntu-latest + timeout-minutes: 20 + steps: + - name: Load secrets + id: op-load-secret + uses: 1password/load-secrets-action@v2 + with: + export-env: false + env: + OP_SERVICE_ACCOUNT_TOKEN: ${{ secrets.OP_SERVICE_ACCOUNT_TOKEN_PUBLIC }} + UNITY_EMAIL: "op://GitHubActionsPublic/UNITY_LICENSE/username" + UNITY_PASSWORD: "op://GitHubActionsPublic/UNITY_LICENSE/credential" + UNITY_SERIAL: "op://GitHubActionsPublic/UNITY_LICENSE/serial" + + - uses: actions/checkout@v4 + + # Execute UnitTest + # /opt/Unity/Editor/Unity -quit -batchmode -nographics -silent-crashes -logFile -projectPath . -executeMethod UnitTestBuilder.BuildUnitTest /headless /ScriptBackend IL2CPP /BuildTarget StandaloneLinux64 + - name: Build UnitTest + uses: Cysharp/Actions/.github/actions/unity-builder@main + env: + UNITY_EMAIL: ${{ steps.op-load-secret.outputs.UNITY_EMAIL }} + UNITY_PASSWORD: ${{ steps.op-load-secret.outputs.UNITY_PASSWORD }} + UNITY_SERIAL: ${{ steps.op-load-secret.outputs.UNITY_SERIAL }} + with: + projectPath: src/UniTask + unityVersion: ${{ matrix.unity }} + targetPlatform: StandaloneLinux64 + buildMethod: UnitTestBuilder.BuildUnitTest + customParameters: "/headless /ScriptBackend IL2CPP" + - name: Check UnitTest file is generated + run: ls -lR ./src/UniTask/bin/UnitTest + - name: Execute UnitTest + run: ./src/UniTask/bin/UnitTest/StandaloneLinux64_IL2CPP/test