name: Build release packages on: workflow_dispatch: push: tags: - "v*" permissions: contents: read jobs: package: name: Package ${{ matrix.platform }} runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: include: - platform: windows os: windows-latest command: dist:win - platform: linux os: ubuntu-22.04 command: dist:linux - platform: macos os: macos-14 command: dist:mac env: CSC_IDENTITY_AUTO_DISCOVERY: "false" steps: - name: Check out source uses: actions/checkout@v4 - name: Set up Node.js uses: actions/setup-node@v4 with: node-version: 22 cache: npm - name: Install dependencies run: npm ci - name: Build packages run: npm run ${{ matrix.command }} - name: Upload packages uses: actions/upload-artifact@v4 with: name: ArborFlow-${{ matrix.platform }} path: release/${{ matrix.platform }}/ if-no-files-found: error compression-level: 0