name: Package on: workflow_dispatch permissions: contents: read jobs: build: runs-on: ${{ matrix.os }} strategy: matrix: os: [windows-2022, ubuntu-22.04, ubuntu-22.04-arm, macos-13, macos-14] steps: - uses: actions/checkout@v4 with: submodules: true - name: Set up JDK 22.0.2 uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '22.0.2' - name: Show Build Versions run: ./gradlew -v - name: Build with Gradle run: ./gradlew jpackage - name: Package zip distribution if: ${{ runner.os == 'Windows' || runner.os == 'macOS' }} run: ./gradlew packageZipDistribution - name: Package tar distribution if: ${{ runner.os == 'Linux' }} run: ./gradlew packageTarDistribution - name: Repackage deb distribution if: ${{ runner.os == 'Linux' }} run: ./repackage.sh - name: Upload Artifact uses: actions/upload-artifact@v4 with: name: Sparrow Build - ${{ runner.os }} ${{ runner.arch }} path: | build/jpackage/* !build/jpackage/Sparrow/ - name: Headless build with Gradle if: ${{ runner.os == 'Linux' }} run: ./gradlew -Djava.awt.headless=true clean jpackage - name: Package headless tar distribution if: ${{ runner.os == 'Linux' }} run: ./gradlew -Djava.awt.headless=true packageTarDistribution - name: Repackage headless deb distribution if: ${{ runner.os == 'Linux' }} run: ./repackage.sh - name: Upload Headless Artifact if: ${{ runner.os == 'Linux' }} uses: actions/upload-artifact@v4 with: name: Sparrow Build - ${{ runner.os }} ${{ runner.arch }} Headless path: | build/jpackage/* !build/jpackage/Sparrow/