미 사용 파일 및 이미지 에셋 삭제 #32
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: | |
| pull_request: | |
| branches: ["**"] | |
| push: | |
| branches: [main] | |
| concurrency: | |
| group: ci-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build-and-test: | |
| runs-on: ubuntu-latest | |
| env: | |
| CI: "1" | |
| # Use Spring mode by default; BFF tests and Web unit tests use mocks | |
| BACKEND_TYPE: spring | |
| PNPM_FROZEN_LOCKFILE: "false" | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| - name: Setup Node | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 20 | |
| cache: "pnpm" | |
| - name: Cache Turbo | |
| uses: actions/cache@v4 | |
| with: | |
| path: .turbo | |
| key: turbo-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} | |
| restore-keys: | | |
| turbo-${{ runner.os }}- | |
| - name: Install dependencies | |
| run: pnpm install --no-frozen-lockfile | |
| - name: Ensure workspace installs (web, bff) | |
| run: pnpm -r --filter ./apps/web --filter ./apps/bff install --no-frozen-lockfile | |
| - name: Lint (web) | |
| run: pnpm exec eslint "apps/web/**/*.{ts,tsx,js,jsx}" | |
| - name: Lint (bff) | |
| run: pnpm exec eslint "apps/bff/{src,apps,libs,test}/**/*.ts" --fix | |
| - name: Typecheck | |
| run: pnpm run typecheck | |
| - name: Build | |
| run: pnpm run build | |
| - name: Unit tests (Turbo) | |
| run: pnpm test | |
| # Optional: run integration tests explicitly (kept separate for clarity) | |
| - name: Integration tests (BFF) | |
| run: pnpm run test:integration || true |