chore: update mowojang (#707) #857
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: 'CI/CD' | |
| on: | |
| push: | |
| paths: | |
| - src/** | |
| branches: | |
| - master | |
| workflow_dispatch: | |
| pull_request: | |
| env: | |
| NODE_VERSION: '22' | |
| jobs: | |
| pnpm: | |
| name: install dependencies (pnpm) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| - name: Use Node.js ${{ env.NODE_VERSION }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'pnpm' | |
| - name: Install node dependencies | |
| run: pnpm install --frozen-lockfile && pnpm install --dir docs/ --frozen-lockfile | |
| prettier: | |
| name: check linting (prettier) | |
| needs: [pnpm] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| - name: Use Node.js ${{ env.NODE_VERSION }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'pnpm' | |
| - name: Install node dependencies | |
| run: pnpm install --frozen-lockfile && pnpm install --dir docs/ --frozen-lockfile | |
| - name: Check prettier | |
| run: pnpm prettier:check | |
| eslint: | |
| name: check linting (eslint) | |
| needs: [pnpm] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| - name: Use Node.js ${{ env.NODE_VERSION }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'pnpm' | |
| - name: Install node dependencies | |
| run: pnpm install --frozen-lockfile && pnpm install --dir docs/ --frozen-lockfile | |
| - name: Check eslint | |
| run: pnpm eslint:check | |
| index: | |
| name: check building (index) | |
| needs: [pnpm] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| - name: Use Node.js ${{ env.NODE_VERSION }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'pnpm' | |
| - name: Install node dependencies | |
| run: pnpm install --frozen-lockfile && pnpm install --dir docs/ --frozen-lockfile | |
| - name: Run index generation | |
| run: pnpm scripts:generate:index | |
| - name: Check index | |
| run: | | |
| if ! git diff --exit-code --quiet -- src/index.ts; then | |
| echo "Index file isn't up to date. Please run 'pnpm scripts:gneerate:index'" | |
| exit 1 | |
| fi | |
| build: | |
| name: build | |
| needs: [pnpm, eslint, index] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| - name: Use Node.js ${{ env.NODE_VERSION }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'pnpm' | |
| - name: Install node dependencies | |
| run: pnpm install --frozen-lockfile && pnpm install --dir docs/ --frozen-lockfile | |
| - name: Check build | |
| run: pnpm build | |
| tests: | |
| name: tests | |
| needs: [pnpm, eslint, index, build] | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v2 | |
| - name: Use Node.js ${{ env.NODE_VERSION }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: 'pnpm' | |
| - name: Install node dependencies | |
| run: pnpm install --frozen-lockfile && pnpm install --dir docs/ --frozen-lockfile | |
| - name: Check tests | |
| env: | |
| HYPIXEL_KEY: ${{ secrets.HYPIXEL_KEY }} | |
| run: pnpm test:coverage | |
| - name: Check Coverage | |
| run: pnpm test:coverage:check |