test: redis err message #71
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: CI | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| types: [opened, reopened, synchronize, ready_for_review] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| checks: | |
| name: Checks | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| - name: Run formatter | |
| run: pnpm run format:check | |
| - name: Run linter | |
| run: pnpm run lint | |
| - name: Check types | |
| run: pnpm tsc | |
| - name: Run build | |
| run: pnpm run build | |
| test-no-cluster: | |
| name: Test (no cluster) | |
| runs-on: ubuntu-latest | |
| needs: checks | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| # Redis-free projects only; every redis-backed project runs in the | |
| # cluster-matrix job below (including against the newest image). | |
| - name: Run tests | |
| run: pnpm run test:no-cluster | |
| cluster-matrix: | |
| name: Cluster (${{ matrix.image }}) | |
| runs-on: ubuntu-latest | |
| needs: checks | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| image: | |
| - redis:6-alpine | |
| - redis:7-alpine | |
| - valkey/valkey:8-alpine | |
| - valkey/valkey:9-alpine | |
| env: | |
| REDIS_IMAGE: ${{ matrix.image }} | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v6 | |
| - name: Setup | |
| uses: ./.github/actions/setup | |
| # Only the redis-backed projects vary by server image: the two cluster | |
| # projects plus the lib smoke test (which exercises the built bundle | |
| # against redis). The local/memory/light projects are covered by `test`, | |
| # which runs the full suite against the default (newest) matrix image. | |
| - name: Run cluster tests | |
| run: pnpm run test:cluster && pnpm run test:lib | |
| test: | |
| name: Test | |
| runs-on: ubuntu-latest | |
| needs: [test-no-cluster, cluster-matrix] | |
| if: always() | |
| steps: | |
| - name: Require all test jobs to pass | |
| run: | | |
| test_no_cluster_result="${{ needs.test-no-cluster.result }}" | |
| cluster_matrix_result="${{ needs.cluster-matrix.result }}" | |
| failed=0 | |
| for r in "$test_no_cluster_result" "$cluster_matrix_result"; do | |
| if [[ "$r" != "success" ]]; then | |
| failed=1 | |
| fi | |
| done | |
| echo "test-no-cluster: $test_no_cluster_result" | |
| echo "cluster-matrix: $cluster_matrix_result" | |
| if [[ "$failed" == "1" ]]; then | |
| echo "::error::One or more test jobs failed." | |
| exit 1 | |
| fi |