Skip to content

Release packaging

Release packaging #15

Workflow file for this run

name: Release packaging
on:
pull_request:
branches:
- develop # To test
- master
jobs:
common-steps:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup JDK
# TODO: replace this once https://github.com/actions/setup-java/pull/637 gets merged.
uses: gmitch215/setup-java@6d2c5e1f82f180ae79f799f0ed6e3e5efb4e664d
with:
java-version: '17.0.12'
distribution: 'jetbrains'
cache: 'gradle'
build-linux:
needs: common-steps
runs-on: ubuntu-latest
steps:
- name: Package
run: |
./gradlew application:packageReleaseTarGz
./gradlew application:packageReleaseDeb
./gradlew application:packageReleaseRpm
- name: Prepare Artifacts
run: |
mkdir -p binaries
mv application/build/distribution/*.tar.gz binaries/
mv application/build/compose/binaries/main-release/deb/*.deb binaries/
mv application/build/compose/binaries/main-release/rpm/*.rpm binaries/
- name: Upload
uses: actions/upload-artifact@v4
with:
name: NeoRegex-linux-packages
path: binaries/*
build-windows:
needs: common-steps
runs-on: windows-latest
steps:
- name: Package exe
run: ./gradlew application:packageReleaseExe
- name: Upload
uses: actions/upload-artifact@v4
with:
name: NeoRegex-windows-packages
path: application/build/compose/binaries/main-release/exe/*.exe
build-macos:
needs: common-steps
runs-on: macos-latest
steps:
- name: Package dmg
run: ./gradlew application:packageReleaseDmg
- name: Upload
uses: actions/upload-artifact@v4
with:
name: NeoRegex-macos-packages
path: application/build/compose/binaries/main-release/dmg/*.dmg