name: Release on: push: tags: - "v*.*.*" permissions: contents: write jobs: release: name: Create Release runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Zip NixOS Config run: zip -rj nixos.zip nixos/ - name: Release uses: softprops/action-gh-release@v2 with: name: PLG-MuDiCS ${{ github.ref_name }} body_path: CHANGELOG.md files: nixos.zip build: name: Build and Upload Assets needs: release runs-on: ubuntu-latest strategy: fail-fast: false matrix: block: - control - display defaults: run: working-directory: ${{ matrix.block }} steps: - name: Checkout Repository uses: actions/checkout@v4 - name: Setup Go uses: actions/setup-go@v5 with: go-version: "^1.24" cache-dependency-path: go.sum - name: Setup Deno uses: denoland/setup-deno@v2 if: matrix.block == 'control' with: deno-version: v2.x - name: Install Dependencies run: go mod download - name: Generate run: go generate ./... - name: Build run: go build -o plg-mudics-${{ matrix.block }} . - name: Upload Release Assets uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} file: ${{ matrix.block }}/plg-mudics-${{ matrix.block }} tag: ${{ github.ref_name }}