fix(dashboard): prevent redirect loop between access and auth middleware #226
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: [main] | |
| pull_request: | |
| branches: [main] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| quality-and-test: | |
| name: Quality & Test | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Node.js with pnpm | |
| uses: ./.github/actions/setup-node | |
| - name: Lint & Format Check | |
| run: pnpm run ci:check | |
| - name: Build Packages | |
| run: pnpm run build | |
| - name: Type Check | |
| run: pnpm run type-check | |
| - name: Test | |
| run: pnpm run test | |
| env: | |
| UPSTASH_REDIS_REST_URL: ${{ secrets.UPSTASH_REDIS_REST_URL }} | |
| UPSTASH_REDIS_REST_TOKEN: ${{ secrets.UPSTASH_REDIS_REST_TOKEN }} | |
| build-apps: | |
| name: Build App (${{ matrix.app }}) | |
| runs-on: ubuntu-latest | |
| needs: quality-and-test | |
| timeout-minutes: 10 | |
| strategy: | |
| matrix: | |
| app: [dashboard, api] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup Node.js with pnpm | |
| uses: ./.github/actions/setup-node | |
| - name: Build ${{ matrix.app }} | |
| run: pnpm turbo build --filter=${{ matrix.app }} | |
| # TODO: Uncomment when E2E tests are added | |
| # e2e: | |
| # name: E2E Tests (${{ matrix.app }}) | |
| # runs-on: ubuntu-latest | |
| # needs: build-apps | |
| # timeout-minutes: 15 | |
| # | |
| # strategy: | |
| # matrix: | |
| # app: [dashboard, website, api] | |
| # | |
| # steps: | |
| # - name: Checkout | |
| # uses: actions/checkout@v5 | |
| # with: | |
| # fetch-depth: 0 | |
| # | |
| # - name: Setup Node.js with pnpm | |
| # uses: ./.github/actions/setup-node | |
| # | |
| # - name: Cache Playwright browsers | |
| # uses: actions/cache@v4 | |
| # with: | |
| # path: ~/.cache/ms-playwright | |
| # key: ${{ runner.os }}-playwright-${{ hashFiles('**/pnpm-lock.yaml') }} | |
| # restore-keys: | | |
| # ${{ runner.os }}-playwright- | |
| # | |
| # - name: Install Playwright browsers | |
| # run: pnpm --filter=${{ matrix.app }} exec playwright install --with-deps | |
| # | |
| # - name: Run E2E smoke tests | |
| # run: pnpm turbo e2e:smoke --filter=${{ matrix.app }} | |
| # | |
| # - name: Upload Playwright report | |
| # uses: actions/upload-artifact@v4 | |
| # if: failure() | |
| # with: | |
| # name: playwright-report-${{ matrix.app }} | |
| # path: apps/${{ matrix.app }}/playwright-report/ | |
| # retention-days: 7 |