Skip to content

Refactor: Webpack -> Vite, Babel -> SWC 로 마이그레이션 #23

Refactor: Webpack -> Vite, Babel -> SWC 로 마이그레이션

Refactor: Webpack -> Vite, Babel -> SWC 로 마이그레이션 #23

Workflow file for this run

# .github/workflows/pr-check.yml
name: PR Type Check
on:
pull_request:
branches: [main, develop]
jobs:
type-check:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '22.13.0'
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: '10.15.1'
- name: Get pnpm store directory
shell: bash
run: |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
- name: Setup pnpm cache
uses: actions/cache@v4
with:
path: ${{ env.STORE_PATH }}
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm-store-
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Debug - 환경 확인
run: |
echo "Node.js: $(node --version)"
echo "pnpm: $(pnpm --version)"
echo "작업 디렉토리: $(pwd)"
echo "패키지 목록:"
pnpm list -r --depth=0
echo "워크스페이스 의존성 확인:"
pnpm list --depth=0 --filter @watcha/carousel
echo "carousel 패키지 빌드 상태 확인 (빌드 전):"
ls -la packages/carousel/ || echo "carousel 패키지 디렉토리가 없음"
ls -la packages/carousel/dist/ || echo "carousel dist 디렉토리가 아직 없음 (정상)"
- name: Build workspace packages in correct order
run: |
echo "=== 워크스페이스 패키지들 순차 빌드 ==="
# 1. 먼저 carousel 패키지 빌드
echo "1. carousel 패키지 빌드 중..."
pnpm --filter @watcha/carousel build
echo "carousel 빌드 완료!"
# 빌드 결과 확인
echo "carousel 빌드 결과 확인:"
ls -la packages/carousel/dist/ || echo "ERROR: carousel dist 디렉토리가 생성되지 않음!"
# 2. carousel 빌드 후 의존성 재설치 (workspace 링크 업데이트)
echo "2. workspace 의존성 재설치 중..."
pnpm install --frozen-lockfile
echo "의존성 재설치 완료!"
# 3. carousel 의존성을 사용하는 앱 빌드
echo "3. watcha_clone_coding 앱 빌드 중..."
pnpm --filter watcha_clone_coding build
echo "watcha_clone_coding 빌드 완료!"
echo "모든 패키지 빌드 완료!"
- name: Run type check
run: |
echo "=== 타입 체크 실행 ==="
pnpm type-check
echo "타입 체크 완료!"
- name: Run lint
run: |
echo "=== 린트 체크 실행 ==="
pnpm lint
echo "린트 체크 완료!"