# This workflow will run every time a new release is created. name: Build and release on: release: types: [created] jobs: portable-build: runs-on: ubuntu-latest steps: - name: Install mkvtoolnix run: sudo apt-get install -y mkvtoolnix - name: Checkout uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4.7.0 with: distribution: temurin java-version: 21 - name: Setup workspace run: mkdir artifacts - name: Build with Maven run: | mvn clean package --file pom.xml -P portable cp target/M*.{zip,tar} artifacts/ - name: Upload artifacts uses: skx/github-action-publish-binaries@master env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: args: 'artifacts/M*' windows-installer-build: runs-on: windows-latest steps: - name: Install mkvtoolnix run: winget install -y mkvtoolnix - name: Checkout uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4.7.0 with: distribution: temurin java-version: 21 - name: Setup workspace run: mkdir artifacts - name: Build with Maven run: mvn clean package --file pom.xml -P windows - name: Upload artifacts uses: skx/github-action-publish-binaries@master env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: args: 'target/installer/*'