Repository navigation
Add dead-letter job type support in DataQueue #207
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: Checks and Tests | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| ci: | |
| runs-on: ubuntu-latest | |
| services: | |
| postgres: | |
| image: postgres | |
| env: | |
| POSTGRES_USER: postgres | |
| POSTGRES_PASSWORD: postgres | |
| POSTGRES_DB: postgres | |
| options: >- | |
| --health-cmd pg_isready | |
| --health-interval 10s | |
| --health-timeout 5s | |
| --health-retries 5 | |
| ports: | |
| - 5432:5432 | |
| redis: | |
| image: redis | |
| ports: | |
| - 6379:6379 | |
| options: >- | |
| --health-cmd "redis-cli ping" | |
| --health-interval 10s | |
| --health-timeout 5s | |
| --health-retries 5 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '20' | |
| - name: Set up pnpm | |
| uses: pnpm/action-setup@v4 | |
| - name: Install dependencies | |
| run: pnpm install | |
| - name: Build | |
| working-directory: packages/dataqueue | |
| run: pnpm run build | |
| - name: Run check format | |
| run: pnpm run check-format | |
| - name: Run check exports | |
| working-directory: packages/dataqueue | |
| run: pnpm run check-exports | |
| - name: Run lint | |
| working-directory: packages/dataqueue | |
| run: pnpm run lint | |
| - name: Run test | |
| working-directory: packages/dataqueue | |
| run: pnpm run test | |
| timeout-minutes: 3 | |
| e2e: | |
| runs-on: ubuntu-latest | |
| services: | |
| postgres: | |
| image: postgres | |
| env: | |
| POSTGRES_USER: postgres | |
| POSTGRES_PASSWORD: postgres | |
| POSTGRES_DB: postgres | |
| options: >- | |
| --health-cmd pg_isready | |
| --health-interval 10s | |
| --health-timeout 5s | |
| --health-retries 5 | |
| ports: | |
| - 5432:5432 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '24' | |
| - name: Set up pnpm | |
| uses: pnpm/action-setup@v4 | |
| - name: Install dependencies | |
| run: pnpm install | |
| - name: Build dataqueue | |
| working-directory: packages/dataqueue | |
| run: pnpm run build | |
| - name: Build react | |
| working-directory: packages/react | |
| run: pnpm run build | |
| - name: Create E2E test database and run migrations | |
| run: | | |
| PGPASSWORD=postgres psql -h localhost -U postgres -d postgres -c "CREATE DATABASE e2e_test;" | |
| PG_DATAQUEUE_DATABASE=postgres://postgres:postgres@localhost:5432/e2e_test pnpm run migrate-dataqueue | |
| working-directory: apps/e2e | |
| - name: Install Playwright browsers | |
| working-directory: apps/e2e | |
| run: npx playwright install --with-deps chromium | |
| - name: Build e2e | |
| working-directory: apps/e2e | |
| run: pnpm run build | |
| - name: Run E2E tests | |
| working-directory: apps/e2e | |
| run: pnpm run test:e2e | |
| timeout-minutes: 5 | |
| env: | |
| PG_DATAQUEUE_DATABASE: postgres://postgres:postgres@localhost:5432/e2e_test | |
| - name: Upload Playwright report | |
| uses: actions/upload-artifact@v4 | |
| if: ${{ !cancelled() }} | |
| with: | |
| name: playwright-report | |
| path: apps/e2e/playwright-report/ | |
| retention-days: 7 |