name: CI on: push: pull_request: jobs: ci: runs-on: docker container: image: oven/bun:1 steps: - name: Checkout uses: actions/checkout@v4 - name: Install dependencies run: bun install --frozen-lockfile --ignore-scripts - name: Lint run: bun run lint - name: Test run: bun test - name: Build run: bun run build e2e: needs: ci runs-on: docker container: image: mcr.microsoft.com/playwright:v1.59.1-noble steps: - name: Checkout uses: actions/checkout@v4 - name: Install Bun run: | apt-get update && apt-get install -y unzip curl -fsSL https://bun.sh/install | bash echo "$HOME/.bun/bin" >> $GITHUB_PATH - name: Install dependencies run: | export PATH="$HOME/.bun/bin:$PATH" bun install --frozen-lockfile --ignore-scripts - name: Build client run: | export PATH="$HOME/.bun/bin:$PATH" bun run build - name: Run E2E tests run: | export PATH="$HOME/.bun/bin:$PATH" CI=true bun run test:e2e