Refactor: Webpack -> Vite, Babel -> SWC 로 마이그레이션 #23
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
# .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 "린트 체크 완료!" |