From 88475bdf4435de89634641de5eeb2f6fda0d56f6 Mon Sep 17 00:00:00 2001 From: Danielku15 Date: Sun, 29 Oct 2023 20:19:45 +0100 Subject: [PATCH] Matrix for Native --- .github/workflows/reusable-full-build.yml | 105 +++++++++------------- 1 file changed, 40 insertions(+), 65 deletions(-) diff --git a/.github/workflows/reusable-full-build.yml b/.github/workflows/reusable-full-build.yml index d6327b0..d9c5843 100644 --- a/.github/workflows/reusable-full-build.yml +++ b/.github/workflows/reusable-full-build.yml @@ -31,84 +31,59 @@ jobs: with: name: nuke path: build/bin/Debug/publish/ -# -# Native Libs - windows: - needs: [nuke] - uses: ./.github/workflows/native.yml - with: - use-skia-cache: ${{ inputs.use-skia-cache }} - alphaskia-version: ${{ inputs.alphaskia-version }} - is-release-build: ${{ inputs.is-release-build }} - runs-on: windows-latest - target-os: windows - architectures: '[ "x64", "x86", "arm64" ]' - variants: '[ "shared" , "jni", "node" ]' - linux: + native: needs: [nuke] - uses: ./.github/workflows/native.yml - with: - use-skia-cache: ${{ inputs.use-skia-cache }} - alphaskia-version: ${{ inputs.alphaskia-version }} - is-release-build: ${{ inputs.is-release-build }} - runs-on: ubuntu-latest - target-os: linux - architectures: '[ "x64", "x86", "arm", "arm64" ]' - variants: '[ "shared" , "jni", "node" ]' + strategy: + fail-fast: false + matrix: + include: + # Desktop + - runs-on: windows-latest + target-os: windows + architectures: '[ "x64", "x86", "arm64" ]' + variants: '[ "shared" , "jni", "node" ]' - macos: - needs: [nuke] - uses: ./.github/workflows/native.yml - with: - use-skia-cache: ${{ inputs.use-skia-cache }} - alphaskia-version: ${{ inputs.alphaskia-version }} - is-release-build: ${{ inputs.is-release-build }} - runs-on: macos-latest - target-os: linux - architectures: '[ "x64", "arm64" ]' - variants: '[ "shared" , "jni", "node" ]' + - runs-on: ubuntu-latest + target-os: linux + architectures: '[ "x64", "x86", "arm", "arm64" ]' + variants: '[ "shared" , "jni", "node" ]' - android: - needs: [nuke] - uses: ./.github/workflows/native.yml - with: - use-skia-cache: ${{ inputs.use-skia-cache }} - alphaskia-version: ${{ inputs.alphaskia-version }} - is-release-build: ${{ inputs.is-release-build }} - runs-on: ubuntu-latest - target-os: macos - architectures: '[ "x64", "x86", "arm", "arm64" ]' - variants: '[ "shared" , "jni" ]' + - runs-on: macos-latest + target-os: macos + architectures: '[ "x64", "arm64" ]' + variants: '[ "shared" , "jni", "node" ]' + + # Mobile + - runs-on: ubuntu-latest + target-os: android + architectures: '[ "x64", "x86", "arm", "arm64" ]' + variants: '[ "shared" , "jni" ]' - ios: - needs: [nuke] - uses: ./.github/workflows/native.yml - with: - use-skia-cache: ${{ inputs.use-skia-cache }} - alphaskia-version: ${{ inputs.alphaskia-version }} - is-release-build: ${{ inputs.is-release-build }} - runs-on: macos-latest - target-os: ios - architectures: '[ "arm64" ]' - variants: '[ "shared" ]' + - runs-on: macos-latest + target-os: ios + architectures: '[ "arm64" ]' + variants: '[ "shared" ]' - iossimulator: - needs: [nuke] + - runs-on: macos-latest + target-os: iossimulator + architectures: '[ "arm64", "x64" ]' + variants: '[ "shared" ]' + uses: ./.github/workflows/native.yml with: use-skia-cache: ${{ inputs.use-skia-cache }} alphaskia-version: ${{ inputs.alphaskia-version }} is-release-build: ${{ inputs.is-release-build }} - runs-on: macos-latest - target-os: iossimulator - architectures: '[ "arm64", "x64" ]' - variants: '[ "shared" ]' + runs-on: ${{ matrix.runs-on }} + target-os: ${{ matrix.target-os }} + architectures: ${{ matrix.architectures }} + variants: ${{ matrix.variants }} # # Libraries dotnet: - needs: [windows, linux, android, macos, ios, iossimulator] + needs: [native] uses: ./.github/workflows/dotnet.yml secrets: inherit with: @@ -116,7 +91,7 @@ jobs: is-release-build: ${{ inputs.is-release-build }} java: - needs: [windows, linux, android, macos] + needs: [native] secrets: inherit uses: ./.github/workflows/java.yml with: @@ -124,7 +99,7 @@ jobs: is-release-build: ${{ inputs.is-release-build }} node: - needs: [windows, linux, macos] + needs: [native] secrets: inherit uses: ./.github/workflows/java.yml with: