ci: update workflows: add deno task install, use root, remove path fi… #5
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: MCPC Core - Deno Tests | |
| on: | |
| push: | |
| branches: [main, develop] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| test: | |
| name: Test with Deno ${{ matrix.deno-version }} on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| timeout-minutes: 10 | |
| strategy: | |
| matrix: | |
| deno-version: ["2.4.x", "2.x"] | |
| os: [ubuntu-latest] | |
| fail-fast: false | |
| steps: | |
| - name: Git Checkout | |
| uses: actions/checkout@v4 | |
| - name: Use Deno ${{ matrix.deno-version }} | |
| uses: denoland/setup-deno@v2 | |
| with: | |
| deno-version: ${{ matrix.deno-version }} | |
| - name: Show Deno Version | |
| run: deno --version | |
| - name: Cache Dependencies | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.cache/deno | |
| key: deno-${{ runner.os }}-${{ matrix.deno-version }}-${{ hashFiles('packages/core/deno.lock') }} | |
| - name: Install Dependencies | |
| run: deno cache mod.ts | |
| - name: Install Deno Postscript | |
| run: deno task install | |
| - name: Run Linter | |
| run: deno lint | |
| - name: Check Formatting | |
| run: deno fmt --check | |
| - name: Type Check | |
| run: deno check mod.ts | |
| - name: Run Tests | |
| run: deno task test | |
| coverage: | |
| name: Generate Coverage Report | |
| runs-on: ubuntu-latest | |
| needs: test | |
| steps: | |
| - name: Git Checkout | |
| uses: actions/checkout@v4 | |
| - name: Use Deno | |
| uses: denoland/setup-deno@v2 | |
| with: | |
| deno-version: 2.x | |
| - name: Run Tests with Coverage | |
| working-directory: packages/core | |
| run: deno test --allow-all --coverage=coverage tests/ | |
| - name: Generate Coverage Report | |
| working-directory: packages/core | |
| run: deno coverage coverage --lcov --output=coverage.lcov | |
| - name: Upload to Codecov | |
| uses: codecov/codecov-action@v4 | |
| continue-on-error: true | |
| with: | |
| file: ./packages/core/coverage.lcov | |
| flags: mcpc-core |