Add exact-key invalidation APIs #158
Workflow file for this run
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: Validate | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| jobs: | |
| validate: | |
| name: Node.js ${{ matrix.node-version }} | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| node-version: [20, 22] | |
| services: | |
| redis: | |
| image: redis:7-alpine | |
| ports: | |
| - 6379:6379 | |
| options: >- | |
| --health-cmd "redis-cli ping" | |
| --health-interval 10s | |
| --health-timeout 5s | |
| --health-retries 5 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: npm | |
| - name: Install dependencies | |
| id: install | |
| run: npm ci | |
| - name: Lint (Biome) | |
| id: lint | |
| run: npx @biomejs/biome check --reporter=github . | |
| - name: Run tests with coverage | |
| id: tests | |
| run: npm run test:coverage | |
| - name: Integration tests | |
| run: npm run test:integration | |
| env: | |
| REDIS_URL: redis://localhost:6379 | |
| REDIS_AVAILABLE: '1' | |
| if: matrix.node-version == '20' | |
| - name: Upload coverage to Coveralls | |
| if: matrix.node-version == 20 | |
| uses: coverallsapp/github-action@v2 | |
| with: | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| file: coverage/lcov.info | |
| fail-on-error: false | |
| - name: Build packages | |
| id: build | |
| run: npm run build:all | |
| - name: Validation summary | |
| if: always() | |
| shell: bash | |
| run: | | |
| { | |
| echo "## Validation summary" | |
| echo "" | |
| echo "- event: \`${{ github.event_name }}\`" | |
| echo "- ref: \`${{ github.ref_name }}\`" | |
| echo "- node: \`${{ matrix.node-version }}\`" | |
| echo "- package: \`$(node -p "require('./package.json').name")\`" | |
| echo "- install: \`${{ steps.install.outcome || 'skipped' }}\`" | |
| echo "- lint: \`${{ steps.lint.outcome || 'skipped' }}\`" | |
| echo "- tests: \`${{ steps.tests.outcome || 'skipped' }}\`" | |
| echo "- build: \`${{ steps.build.outcome || 'skipped' }}\`" | |
| } >> "$GITHUB_STEP_SUMMARY" |