미 사용 파일 및 이미지 에셋 삭제 #39
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: | | |
| FILES=$(git ls-files 'apps/web/**/*.ts' 'apps/web/**/*.tsx' 'apps/web/**/*.js' 'apps/web/**/*.jsx' | tr '\n' ' ') | |
| if [ -n "$FILES" ]; then | |
| pnpm exec eslint $FILES | |
| else | |
| echo "No web source files to lint" | |
| fi | |
| - name: Lint (bff) | |
| run: | | |
| FILES=$(git ls-files 'apps/bff/src/**/*.ts' 'apps/bff/apps/**/*.ts' 'apps/bff/libs/**/*.ts' 'apps/bff/test/**/*.ts' | tr '\n' ' ') | |
| if [ -n "$FILES" ]; then | |
| pnpm exec eslint $FILES --fix | |
| else | |
| echo "No bff source files to lint" | |
| fi | |
| - name: Typecheck (disabled) | |
| if: false | |
| 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 |