diff --git a/.github/workflows/build-gradle.yml b/.github/workflows/build-gradle.yml new file mode 100644 index 000000000..85e3bfdf8 --- /dev/null +++ b/.github/workflows/build-gradle.yml @@ -0,0 +1,62 @@ +name: Pre-releases +on: + push: + paths-ignore: + - '**/*.md' + - '.all-contributorsrc' + +jobs: + build: + name: Create Pre-release for ${{ matrix.os_prefix }} (${{ matrix.arch }}) + runs-on: ${{ matrix.os }} + permissions: + contents: write + strategy: + matrix: + include: + # compiling for arm32 needs a self-hosted runner on Raspi OS (32-bit) + - os: self-hosted + os_prefix: linux + arch: arm + - os: ubuntu-latest + os_prefix: linux + arch: x64 + - os: windows-latest + os_prefix: windows + arch: x64 + - os: macos-latest + os_prefix: macos + arch: x64 + - os: macos-latest + os_prefix: macos + arch: aarch64 + - os: macos-latest + os_prefix: linux + arch: aarch64 + steps: + - name: Checkout Repository + uses: actions/checkout@v4 + - name: Checkout Examples Repository + uses: actions/checkout@v4 + with: + repository: processing/processing-examples + path: processing-examples + - name: Install Java + uses: actions/setup-java@v4 + with: + java-version: '17' + distribution: 'temurin' + architecture: ${{ matrix.arch }} + - name: Setup Gradle + uses: gradle/actions/setup-gradle@v4 + - name: Build with Gradle + run: ./gradlew packageDistributionForCurrentOS + - name: Add artifact + uses: actions/upload-artifact@v4 + with: + name: processing-${{github.sha}}${{ matrix.os_prefix }}-${{ matrix.arch }} + path: | + ./app/build/compose/binaries/**/*.dmb + ./app/build/compose/binaries/**/*.msi + ./app/build/compose/binaries/**/*.deb + retention-days: 1