on: push: tags: - "*" branches: - "**" jobs: build-and-release: name: Build App runs-on: ${{ matrix.os }} permissions: contents: write strategy: matrix: os: [ubuntu-latest, windows-latest, macos-latest] steps: - name: Checkout uses: actions/checkout@v4 - name: Checkout assets run: git -c submodule."assets".update=checkout submodule update --init assets - name: Install pnpm uses: pnpm/action-setup@v4 with: run_install: false - name: Install Node.js uses: actions/setup-node@v4 with: node-version: 22 cache: "pnpm" - name: Install dependencies run: pnpm install - name: Build or Publish run: | if [[ "${{ startsWith(github.ref, 'refs/tags/') }}" == "true" ]]; then pnpm run publish else pnpm run make fi shell: bash env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}