ci(build): fix issue with building app #2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| NODEJS: "lts/*" | |
| permissions: | |
| contents: write # to be able to publish a GitHub release | |
| issues: write # to be able to comment on released issues | |
| pull-requests: write # to be able to comment on released pull requests | |
| id-token: write # to enable use of OIDC for npm provenance | |
| on: | |
| push: | |
| branches: [ master ] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| node: ['lts/*', 'current' ] | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Enable pnpm | |
| run: npm install -g corepack@latest && corepack enable pnpm | |
| - name: Use Node.js ${{ matrix.node }} | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{ matrix.node }} | |
| cache: 'pnpm' | |
| - name: Install dependencies | |
| run: corepack pnpm install | |
| - name: Run tests | |
| run: corepack pnpm run test | |
| - name: Upload code coverage | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| fail_ci_if_error: true # optional (default = false) | |
| ci-cd-check: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Enable pnpm | |
| run: npm install -g corepack@latest && corepack enable pnpm | |
| - name: Setup Node.js ${{env.NODEJS}} | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{env.NODEJS}} | |
| cache: 'pnpm' | |
| - name: Install semantic-release beta | |
| run: corepack pnpm add semantic-release@beta | |
| - name: Install dependencies | |
| run: corepack pnpm install | |
| - name: Run semantic-release | |
| run: corepack pnpm semantic-release --dry-run | |
| deploy-pages: | |
| needs: build | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Enable pnpm | |
| run: npm install -g corepack@latest && corepack enable pnpm | |
| - name: Use Node.js ${{env.NODEJS}} | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{env.NODEJS}} | |
| cache: 'pnpm' | |
| - name: Install semantic-release dependencies | |
| run: corepack pnpm install | |
| - name: Build package | |
| run: corepack pnpm run build:doc | |
| - name: Deploy 🚀 | |
| uses: JamesIves/[email protected] | |
| with: | |
| branch: gh-pages # The branch the action should deploy to. | |
| folder: docs # The folder the action should deploy. | |
| release: | |
| needs: [build, ci-cd-check] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Enable pnpm | |
| run: npm install -g corepack@latest && corepack enable pnpm | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: ${{env.NODEJS}} | |
| cache: 'pnpm' | |
| - name: Install semantic-release dependencies | |
| run: corepack pnpm install --frozen-lockfile | |
| - name: Install semantic-release beta | |
| run: corepack pnpm add semantic-release@beta | |
| - name: Build package | |
| run: corepack pnpm run build | |
| - name: Release | |
| run: corepack pnpm run semantic-release |