name: Build on: pull_request: branches: - '*' push: branches: - 'master' jobs: build: strategy: matrix: container: - archlinux:latest runs-on: ubuntu-latest container: image: ${{ matrix.container }} steps: - name: Checkout uses: actions/checkout@v4 - name: Build run: sh ./.github/workflows/build.sh - name: Upload Arch artifact uses: actions/upload-artifact@v4 with: path: ./dist/*.pkg.tar.zst name: arch-packages - name: Upload Deb artifact uses: actions/upload-artifact@v4 with: path: ./dist/*.deb name: deb-packages - name: Upload Asar artifacts uses: actions/upload-artifact@v4 with: path: ./dist/*.asar name: asar-packages nix-build: runs-on: ubuntu-latest env: NIXPKGS_ALLOW_UNFREE: 1 steps: - name: Checkout uses: actions/checkout@v4 - name: Install nix uses: cachix/install-nix-action@v22 - name: Build run: sh ./.github/workflows/build.sh - name: Upload artifact uses: actions/upload-artifact@v4 with: path: ./result/* name: nix-package upload-release: if: github.ref == 'refs/heads/master' runs-on: ubuntu-latest needs: [build, nix-build] steps: - name: Download artifact uses: actions/download-artifact@v4 with: merge-multiple: true path: dist - id: data uses: pozetroninc/github-action-get-latest-release@v0.7.0 with: repository: ${{ github.repository }} - name: Upload files to a GitHub release uses: svenstaro/upload-release-action@v2 with: file: dist/* tag: ${{ steps.data.outputs.release }} overwrite: true file_glob: true