Skip to content

fix(dashboard): prevent redirect loop between access and auth middleware #226

fix(dashboard): prevent redirect loop between access and auth middleware

fix(dashboard): prevent redirect loop between access and auth middleware #226

Workflow file for this run

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