chore(deps): update dependency globals to v17 #519
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: '20' | |
| 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 i | |
| 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 i | |
| - 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 i | |
| - 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 i | |
| - 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 | |
| api-index: | |
| name: check building (API 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 i | |
| - name: Run API index generation | |
| run: pnpm scripts:generate:index:api | |
| - name: Check API index | |
| run: | | |
| if ! git diff --exit-code --quiet -- src/API/index.ts; then | |
| echo "Index file isn't up to date. Please run 'pnpm scripts:gneerate:index:api'" | |
| exit 1 | |
| fi | |
| build: | |
| name: build | |
| needs: [pnpm, eslint, index, api-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 i | |
| - name: Check build | |
| run: pnpm build | |
| tests: | |
| name: tests | |
| needs: [pnpm, eslint, index, api-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 i | |
| - name: Check tests | |
| env: | |
| HYPIXEL_KEY: ${{ secrets.HYPIXEL_KEY }} | |
| run: pnpm test:coverage | |
| - name: Check Coverage | |
| run: pnpm test:coverage:check |